被误解的 Tcl

主要观点:Tcl 并非玩具语言而是非常强大的语言,常被误解但实则有诸多优点。
关键信息

  • Tcl 以命令为基础,程序由命令组成,几乎一切都是命令,如通过set设置变量、puts输出等。
  • 有命令替换(\[...\])、变量替换($)、分组(""{})等概念。
  • 动态类型,无严格类型限制,对象会缓存字符串的原生值,运行时决定字符串代表的意义。
  • 有列表(list)类型,可用于建模各种概念,如llength获取列表长度等。
  • 数学运算通过expr命令,也可自定义运算符为命令的过程(proc)。
  • Evaluplevel可实现类似 Lisp 宏的功能,通过uplevel可在不同上下文执行代码。
  • Tcl 语法简单可扩展,无类型但有严格格式检查,有强大的事件驱动 I/O 模型,支持多种编程范式,列表是核心数据结构,通过uplevel可实现可编程编程语言,国际化支持好,可进行激进的语言修改用于开发领域特定语言(DSL)等。
    重要细节
  • 文中通过多个代码示例详细解释了 Tcl 的各种概念和特性,如if命令的使用、自定义+等运算符的过程、repeat过程的实现等。
  • 提到 Tcl 解析器简单可在 Tcl 中编写,其源代码质量高,跨不同操作系统工作相同,如商业级质量,Tk 在不同系统无质量差异。
  • 介绍了一些基于 Tcl 的项目,如 Jim 解释器和 Hecl 语言,Jim 已部分放弃,Hecl 作为 Java 应用的脚本语言正在开发。
阅读 8
0 条评论