Tcl/Tk 8.6.5 发布,常用于信息产业领域的编程语言
Tcl/Tk 8.6.5 发布了,Tcl/Tk 是一种简明,高效,可移植性好的编程语言。在信息产业领域具有广泛的应用。
Tcl/Tk 的发明人 John Ousterhout 教授在八十年代初,是伯克利大学的教授。在其教学过程中,他发现在集成电路 CAD 设计中,很多时间是花在编程建立测试环境上。并且,环境一旦发生了变化,就要重新修改代码以适应。这种费力而又低效的方法,迫使 Ousterhout 教授力图寻找一种新的编程语言,它即要有好的代码可重用性,又要简单易学,这样就促成了 Tcl (Tool Command Language) 语言的产生。
Tcl 最初的构想的是希望把编程按照基于组件的方法 (component approach),即与其为单个的应用程序编写成百上千行的程序代码,不如寻找一个种方法将程序分割成一个个小的, 具备一定“完整”功能的,可重复使用的组件。这些小的组件小到可以基本满足一些独立的应用程序的需求,其它部分可由这些小的组件功能基础上生成。不同的组件有不同的功能,用于不同的目的。并可为其它的应用程序所利用。当然, 这种语言还要有良好的扩展性, 以便用户为其增添新的功能模块。最后,需要用一种强的,灵活的“胶水”把这些组件“粘”合在一起, 使各个组件之间可互相“通信”,协同工作。程序设计有如拼图游戏一样,这种设计思想与后来的 Java 不谋而合。终于在 1988 年的春天, 这种强大灵活的胶水 - Tcl 语言被发明出来了。
本次相关更新记录如下:
* [TIP 436] [info object isa] favors 'false' over error.
* [TIP 441] New option [listbox ... -justify].
* New Tk icons have clear free license.
* Stopped use of deprecated Cocoa API calls that trigger warnings in clang.
* Cocoa: Smoother window resizing; eliminated redraw/flicker on El Capitan.
* Cocoa: Elimination of zombie windows when windows are closed.
* Fixed crashes or hangs in...
- traced [expr].
- OO teardown.
- [$text delete].
- asynchronous socket connection on Windows.
- large-scale multi-threading with forks.
- overflows and memory errors in image handling.
* Repaired memory leaks in
- compiled [unset a($i)].
- zlib compresion errors.
- [file] operations on Windows.
- Cocoa event loop processing.
* Fix: [tailcall] combinations with [next] or ensembles.
* Fix: compiled [lreplace] handling of end.
* Fix: Ctrl-C/Ctrl-Break in Window console not treated as EOF.
* Fix: [tk_getOpenFile] -initialdir on Windows.
* Fix: streaming [zlib deflate] failure on empty input.
* Fix: non-empty [self] in destructor after failed constructor.
* Updated bundled packages
- msgcat 1.6.0: [TIP 412] dynamic and per-package locale.
- http 2.8.9: Default gzip transfer encoding; per-connection -accept
*** POTENTIAL INCOMPATIBILITY ***
- registry 1.3.1: Unicode SendMessageTimeout().
- Itcl 4.0.4
- Thread 2.7.3
- sqlite 3.11.0
- TDBC* 1.0.4
更多信息请看:https://sourceforge.net/projects/tcl/files/Tcl/8.6.5/tcltk-release-notes-8.6.5.txt/view