HACKER Q&A
📣 tpoacher

How popular is Tcl in 2024?


Every now and then I come across comments that talk about Tcl, and they're always very positive. (last one I bumped into, here: https://news.ycombinator.com/item?id=41105139)

I've always had Tcl on my list of languages to learn "when I have some spare time", but there's always something 'better' to learn instead, so I haven't done it yet.

How relevant / popular is Tcl in 2024, really? Is it a language still worth learning in 2024? Can someone who is into Tcl and thinks so convince me that it's a language worth learning?


  👤 cmacleod4 Accepted Answer ✓
These days Tcl has a small but enthusiastic following. This year's European Tcl conference just happened, see https://openacs.org/conf2024/info/ . The 9.0 release of Tcl and Tk is coming soon - https://www.tcl-lang.org/software/tcltk/9.0.html .

A while back I wrote a blog post about why I think Tcl is special - https://colin-macleod.blogspot.com/2020/10/why-im-tcl-ish.ht... .


👤 PaulHoule
Tcl is like a Lisp where space-separated strings take the place of S-expressions.

Thus I like Tcl a lot fundamentally and think it's an interesting language, but it doesn't have the huge library that, say, Python or Clojure have so I don't see myself really using Tcl much. I think Lua stole a lot of Tcl's thunder as a language that's easy to embed in a bigger application. (I remember talking w/ someone who chose Lua over Tcl as an extension language for a big FORTRAN program in the 1990s)

The tk UI toolkit was the Unix answer to Visual Basic, it's very easy to code up little GUI applications if you don't care what they look like. If you do care what they look like you can improve things with more work but a tk app will never look great compared to a 2024 Electron or WinUI app.

One thing I found out is that unlike modern UI frameworks, tk does not do color management. I have a monitor which is more-or-less AdobeRGB and when I display an ordinary sRGB JPEG it is the job of the application to give Windows the image in the color space of the monitor. tk has no conception of this so the sRGB goes out to the monitor and is displayed as if it was AdobeRGB. Other modern features such as accessibility are missing

https://sourceforge.net/p/tcl/mailman/message/36955189/

So it's hard for me to recommend tk for GUI development.