4 ms·
It is unfortunately entrenched in the EDA industry. I have absolutely no idea why you would use it if you don't work in that space.
by IshKebab 2y ago
It is unfortunately entrenched in the EDA industry. I have absolutely no idea why you would use it if you don't work in that space.
- sokoloff 2y agoBecause it works. I introduced it into some of our release tooling in the mid-2000s. Easy to integrate, easy to understand, unsurprisingly good string/text handling, expect was very useful, and it’s not going to be used by anyone else, so no worries about version conflicts. It ran successfully largely unchanged for around a decade.
- IshKebab 2y agoEverything works. PHP works. Perl works. Bash works. I like to use tools that more than merely work. There's a reason nobody outside EDA uses it.
- _mlbt 2y agoIt’s included with Python in the form of Tkinter, the MacPorts package manager is written in it, and it’s also used by Cisco IOS for scripting.
- IshKebab 2y agoJust FYI when people say things like "nobody like this" or "everybody does that" they don't literally mean 100.00%.
- RHSeeger 2y agoIt is, for many people, an absolute pleasure to work in.
- cmacleod4 2y agoStrange, I've been attending the EuroTcl conferences for a few years now, I don't remember any of the presentations I've seen being related to EDA - https://www.eurotcl.eu/pastevents.html https://www.eurotcl.eu/pastevents.html :-/
- johnnyjeans 2y agoit's a language that's trivial to implement because it's well designed and simple, it embeds very nicely, and it's fantastic for use as a debug shell and to implement guis. it's a great technician's language, if you work with technically-minded people who aren't necessarily programmers, it's a great way to hand them deep interactive power without the footguns of a forth.
- IshKebab 2y agoI would say it's cleverly designed. Well designed? Hmm, would a well designed language have such a basic flaw as comments that can only be used in very specific places?
- BoingBoomTschak 2y agoI understand where they came from here: the Scheme-like obsession with purity (the enshrined Endekalogue, now Dodekalogue) didn't mesh very well with traditional comment. Yeah, Tcl has its design warts, but I don't think it has that many remaining that can't be fixed via metaprogramming. Even the popular Python manages to frustrate me with its idiotic statement/expression divide (they doubled down by making match() a statement...) and constant need to convert between generators/iterables and lists. Thing is that R6RS Scheme (or R7RS-large if it comes out one day) is basically a better Tcl if you only consider scripting and don't need the event loop. If Tcl had played its cards right, it'd have competed with fish/rc/nushell/powershell instead, it was really ready to be a better shell well before any other. ------ To be honest, Common Lisp is the only language I've ever seen get this right without compromising on said purity by specifying the reader (parser): https://www.lispworks.com/documentation/HyperSpec/Body/02_.htm https://www.lispworks.com/documentation/HyperSpec/Body/02_.h... Comments are then just the result of a readtable entry like any other, allowing this kind of voodoo: ; A comment (set-macro-character #\% (get-macro-character #\;)) % Also a comment
- johnnyjeans 2y agoabsolutely, i don't even consider that a flaw. i dont like EOL comments stylistically.