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

The vast array of Schemes available is part of what made me eventually land at Tcl and just dig in there.


Interestingly I've had a similar experience. I used Chicken Scheme for a number of years after programming in Tcl for a long time. Tcl always seemed to be a kind of Lisp, an impression that only increased over time. Eventually I resumed using Tcl when I realized the language had been steadily improved over several years. With Tcl 9.0 on the horizon I see no reason to look elsewhere for accomplishing most programming tasks.


Tcl offers metaprogramming capability that rivals Lisp's, but they way it goes about doing it is... kinda nuts. I don't particularly care to stare into that yawning abyss for too long, so it sits well behind Scheme in terms of languages I'd reach for.

Tcl/Tk is still an unrivalled way to prototype a GUI -- and with Snit megawidgets, it's almost like programming a modern JavaScript component framework like React.


Yes, you're right, Tcl suffers from lack of Scheme-like macros. While a lot can be done using procedures, methods and introspection "tricks", often enough it's far from elegant. However I haven't been stymied all that often. Missing functionality can sometimes be provided by C-API extensions which I've gotten pretty good at writing.

Completely agree about the utility of Tk. I remember reading somewhere that HTML/CSS widgets were influenced by Tk. Don't know how true that is but I can see how it could be.


Fun thing is that Tcl was relegated to the role of gateway drug to Common Lisp, in my case. I still use it when I want a more modern stdlib or its well-integrated event loop.

(I actually tried to retrofit some of CL in Tcl, heh; https://wiki.tcl-lang.org/page/q3cpma)




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

Search: