Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

omg, you're 17! I am as well, see my comment [0].

the only thing I know about Tcl is that git uses the tcl language to generate the git gui and gitk programs.

[0] https://news.ycombinator.com/item?id=30939560



Probably the most common way people interact with Tcl is through python, ironically. Tcl has a GUI library called Tk, through tkinter, available as part of the python standard library.

Outside of Tk, Tcl pops up in a couple of odd places, usually as part of some testing system (expect(1) and SQLite use it) or build system, though use has fallen off quite a bit since the 1990s.

Placing somewhere between a lisp and shell, it's incredibly effective as a language for gluing things together and creating DSLs, and is fairly easy to embed in a manner similar to Lua.

Definitely not a perfect language, but one that I find extremely comfortable to work in and iterate quickly for certain projects.

Antirez's blog has a pretty concise explanation of Tcl's features and what makes it special:

http://antirez.com/articoli/tclmisunderstood.html


I used to work at a place whose webserver was in TCL (AOLServer). Once I figured out some of the gotchas, I learned to really like TCL.

Like you mention, it's used as glue in lots of places, for instance in my Electrical Engineering classes to glue together VHDL/Verilog and program FGPAs.


I have a friend who worked as a principal developer on an EDA product from Synopsys. It was amusing how he converted all of the product and product acquisitions into TCL and whatever compiled language + a c lib so he could invoke the feature from TCL.


Also used by OpenOCD[1] for chip debugging and flashing.

[1] https://openocd.org/


but that's hardly an endorsement.




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

Search: