3 ms·
What made Tcl click for me was thinking that it is basically shell/Bash, except that it's a coherent and sensible design. Just like an unix shell, everything is
by ufo 6y ago
What made Tcl click for me was thinking that it is basically shell/Bash, except that it's a coherent and sensible design. Just like an unix shell, everything is a string and you don't need to use "double" "quotes" "everywhere" "like" "this". However, in almost every part of the language, the way that Tcl does it is saner than the way the unix shell does it.
The infinitude of footguns of Unix shell make us discount it as a serious programming language but Tcl shows that it doesn't have to be that bad :)
- a1369209993 6y agoTBF, half of the supposed footguns are people not understanding the difference between a command shell and a scripting language and trying to write code as if they were using the latter[1], and the other half are defects of specific shell languages rather than shell programming in general[0], but the lack of a decent implementation kind of hamstrings the latter defence. 0: There is no reason why a shell couldn't fix bugs like: $ echo "$X" * $ echo $X foo.txt bar.mp4 it's just that none of the common ones do. 1: especially the incessant stupidity about adding type information to pipes, as if grep were a function rather than the arbitrary binary file /bin/grep
- fanf2 6y agoThe Plan 9 `rc` shell is a bit neater than typical Unix shells