Syntax 是否有一种2+;3*5ISN';t 17?

Syntax 是否有一种2+;3*5ISN';t 17?,syntax,programming-languages,compilation,operators,expression-trees,Syntax,Programming Languages,Compilation,Operators,Expression Trees,这就是问题所在,2+3*5不是17的编程语言吗?我发现这个问题是对我的能力的一次老测试,引起了我的注意。没什么大不了的,但我有点怀疑。另一个好处是,为什么不呢?根据,Smalltalk将产生不同的结果: 在APL中,评估严格从右到左,在Smalltalk中,评估严格从左到右 APL将通过巧合得到正确的结果-它将在3*5+2上得到一个意外值,那么FORTH(或任何使用反向波兰语表达式的语言)如何?@PaulR2+3*5不代表有效的FORTH表达式。可能取决于数字的基数;)如果它是base 6,则任

这就是问题所在,
2+3*5
不是17的编程语言吗?我发现这个问题是对我的能力的一次老测试,引起了我的注意。没什么大不了的,但我有点怀疑。另一个好处是,为什么不呢?

根据,Smalltalk将产生不同的结果:

在APL中,评估严格从右到左,在Smalltalk中,评估严格从左到右


APL将通过巧合得到正确的结果-它将在
3*5+2

上得到一个意外值,那么FORTH(或任何使用反向波兰语表达式的语言)如何?@PaulR
2+3*5
不代表有效的FORTH表达式。可能取决于数字的基数;)如果它是base 6,则任何语言都不会(或应该)产生17。@PaulR:dasblinkenlight是对的。。。第四,使用posfix表示法(我刚刚读过维基百科),因此运算符放在其操作数之后。如果语言允许将变量命名为
2
,那么肯定有。