是否有任何编程语言都是字符串。例如,让我们考虑这个Tcl片段(注释显示C / Java中的等效语句),例如。
set x [append ab cd] ;# c = "ab" + "cd"
set m 1 ;# m = 1
set n [expr $m + 1] ;# n = m + 1
实际上,这与C或Java等语言相反;默认情况下,我们输入的是一个文字字符串,除非它是"特殊的"单词或以$符号开头(在这种情况下,$后面的字符串是变量)。
答案 0 :(得分:0)
我说你的例子根本没有从C或Java中删除。这种轻松的语法在shell脚本语言中并不常见,它只需要一个足够聪明的预处理器来允许它,比方说,C。Lisp宏有"除非我说它应该是一个字面值被评估"反引号表达式中的语义。
Tcl EIAS意味着它允许程序以字符串作为通用货币交替处理不同的数据结构,数据结构和可执行代码。这并不是闻所未闻的:例如: Lisp用列表做到了这一点,但它并不常见。它使Tcl极具动态性,对许多程序员来说也非常怪异。
答案 1 :(得分:0)
Rexx (Restructured Extended Executor)和OORexx是具有相同理念的两种语言:
在Rexx中 - 有点像在TCL中 - 在很大程度上,一切都是字符串。拥有由行组成的堆栈和流为您提供简单的列表或字符串数组。但大多数情况下,字符串只是根据需要像其他数据类型一样。例如,包含合适的数字表示(数字,小数,指数" e"等)的字符串可用于算术运算。对于处理报告,日志文件等,这正是您想要的行为。
* nix有很多这样的迷你语言。例如:
<强>参考强>