Hacker News new | past | comments | ask | show | jobs | submit login

Ousterhout designed Tcl as a general replacement for the kind of small crappy one-off interpreters he found himself adding to larger systems over and over again. At one point he decided that enough was enough and we was going to write an embeddable interpreter with the flavor of a simple shell like bash.

Tcl is great for simple scripting and automated testing. It's also great when you want to represent small bits of data as code. Perspecta Presents[1], one of Ousterhout's first commercial ventures, used Tcl scripts as the file format for its presentations[2].

But Tcl was never intended for large programs. Ousterhout expected large programs to be written in another language with compilers, linkers, linters and other tools. Once a Tcl program gets past a certain size it becomes effectively unmaintable. Tracking down a variable name typo bug in a 100,000 line Tcl program is a hell I refuse to visit again.

1- http://wiki.tcl.tk/4191 2- http://www.rpi.edu/dept/rcs/packages/ppres/1.10/common/sampl...




Tcl requires a certain level of stylistic discipline and rigor. You are not wrong about tracking down a typo but that's a problem anywhere.

That Perspecta file is not pretty to look at.


Exactly. Tcl was intended for embedding into other applications, not for writing fully blown applications itself.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: