Re:GNU Shepherd 1.0.0 Released
by pkkm on Tuesday January 14, 2025 @06:38PM
(#42705475)
> TCL
I actually know the answer to that one!
> The principal lesson of Emacs is that a language for extensions should not be a mere "extension language". It should be a real programming language, designed for writing and maintaining substantial programs. Because people will want to do that!
> Another lesson from Emacs is that the way to make sure an extension facility is really flexible is to use it to write a large portion of the ordinary released system. If you try to do that with Tcl, you will encounter its limitations.
> Tcl was not designed to be a serious programming language. It was designed to be a "scripting language", on the assumption that a "scripting language" need not try to be a real programming language. So Tcl doesn't have the capabilities of one. It lacks arrays; it lacks structures from which you can make linked lists. It fakes having numbers, which works, but has to be slow.
From Why you should not use Tcl by Richard Stallman [1].
Re:GNU Shepherd 1.0.0 Released
by kstrauser on Tuesday January 14, 2025 @07:56PM
(#42706067)
Brilliant. That's exactly the kind of information I was missing. I don't know enough about Tcl to opine on whether he was right, but if that's what RMS thought about it, I can see why he'd push back hard against it..
I actually know the answer to that one!
> The principal lesson of Emacs is that a language for extensions should not be a mere "extension language". It should be a real programming language, designed for writing and maintaining substantial programs. Because people will want to do that!
> Another lesson from Emacs is that the way to make sure an extension facility is really flexible is to use it to write a large portion of the ordinary released system. If you try to do that with Tcl, you will encounter its limitations.
> Tcl was not designed to be a serious programming language. It was designed to be a "scripting language", on the assumption that a "scripting language" need not try to be a real programming language. So Tcl doesn't have the capabilities of one. It lacks arrays; it lacks structures from which you can make linked lists. It fakes having numbers, which works, but has to be slow.
From Why you should not use Tcl by Richard Stallman [1].
[1] https://vanderburg.org/old_pages/Tcl/war/0000.html