今天我在思考编程风格和等号,以及当人们不在他们周围放置空格时它看起来多么糟糕,这让我思考:
是否存在不(主要)通过“=”符号表示设置值的语言?
并不是要硬塞进去,但是有没有使用“=”进行比较操作的语言(而不是“==”)?
今天我在思考编程风格和等号,以及当人们不在他们周围放置空格时它看起来多么糟糕,这让我思考:
是否存在不(主要)通过“=”符号表示设置值的语言?
并不是要硬塞进去,但是有没有使用“=”进行比较操作的语言(而不是“==”)?
当然!例如,许多 LISP 系列语言以从左到右的模式表达赋值(和其他操作)
(set! x (+ 1 2 3))
这称为前缀表示法,而x = 1 + 2 + 3
另一种语言可能会是中缀表示法。未使用该符号的事实=
是次要的,并且可能更多是因为它在前缀符号中看起来比其他任何东西都奇怪。
POSIX Shell 及其变体=
在一种上下文中用于赋值,但在另一种上下文中用于比较,如在[
命令之后:
[ "$x" = "abc" ]
顺便说一句,sh
不关心你的审美:如果你=
用于赋值,你最好不要包含空格!
$ z = 1
-bash: z: command not found
是的,Pascal:=
用于赋值。
Visual Basic=
用于比较和赋值。