Who Says Tcl Rules ?, Hacker News

Purpose: collect positive quotes referring to Tcl

All in good taste, and if possible, provide an exact reference or URL. ([18 ] escargo

adds – and the current date!) [14 ] (Perl) is really old news, and for the average DA / ASIC / FPGA / SoC engineer, Perl is probably the worst scripting they could try to learn , for as many reasons as Tcl / Tk is the right first language. ” – Rich Auletta        ViaWest Boulder, CO “I would still take a hard core Verilog or VHDL coder with Tcl skills over a Perl guy any day of the week.” – Randy Findley        Layer N Networks (All from) ( – .html

, an October [10 ] , (discussion archive.) [14 ] ee [10 ]

“I started using Tcl back around [12 ] . I was looking for a quick way to prototype ideas, with the intent that, once the logic was proven feasible, the code would then be redone for production use in a “real” language like (C) or C After a while, it started to appear that the Tcl-based prototypes worked so well that fewer and fewer of our projects required recoding. Several years ago it became clear that the Tcl platform had evolved to the point where it was no longer necessary to recode our prototypes at all. Since then, I’ve been using Tcl exclusively for virtually all of my development projects, and haven’t looked back. ” – Mike Doyle        Eolas Technologies Inc.

Why have you chosen Tcl?

Because I like “programmable programming languages” like Tcl and Lisp a a lot. The programmer is free to reinvent the language, write new control structures, and so on. Tcl is very powerful, but for some reason few programmers fully understand it, so it’s often regarded as a toy language. I use Tcl for everything not involving low-level things or speed. For the rest, I tend to use C. What particular limit or feature does the language itself bring? [14 ] One of the best features that Tcl gives you is that you can specialize it so much to have a domain-specific language designed to play with packets. The limitation of all this flexibility is speed. For example, in theory you can use hping3 to write a firewalling engine, but in reality you can’t go beyond a “prototype” because a firewall needs to be fast. [1 ] [12 ] – Salvatore Sanfilippo [18 ] [20 ] From the computer science perspective TCL looks like a more interesting development than Perl as it is the first open sourced embeddable language. IMHO Perl is a kind of mainframe (anti – Unix style language that very much reminds me (PL / 1) (“all things for all people” kind of approach; there is always several ways to accomplish anything, etc. – bonanza for consultants and book writers ;-), while TCL is a more Unix-style language. It does well one thing well: it’s a really decent command language for various tools including OFMs. [16 ] It’s very sad that TCL never become prominent neither in (Solaris) (in in (Linux) environment. BTW that definitely attests Linux as a neo-conservative movement as TCL has tremendous potential to lift Unix-style OS to a different level by integrating applications on a new level as well as providing a common internal language to a million of obscure Unix utilities some of which outlived their usefulness. One needs to understand that despite their non-othogonality and obscurity (I would like to see a person who really understands all the differences between find and grep in interpreting regular expressions 😉 the current set of Unix utilities still represents quite an innovative, semantically rich set of commands for the operating system. [2 ] [12 ] – Dr Nikolai Bezroukov [18 ]

On comp.lang.tcl [3 ], Robert said, “… I still use Perl for my web stuff but I am slowly moving all my admin tasks to little Tcl utilities and I had a lot of fun doing it. 🙂 Just a rave! ”

[20 ] The EDA [10 ] training company Doulos says this [4 ]:

Tcl is a popular and widely used cross-platform script programming language that achieves Significant productivity gains when used by skilled engineers. Its combination of text processing, file manipulation and system control features make it ideal for this purpose. industry-leading EDA tools use it together with the Tk graphics toolkit to provide a flexible and platform-independent graphical user interface. Included are: ModelSim, Leonardo Spectrum, (Synopsys) Design & FPGA Compiler, Synplify Pro and Altera Quartus. ”

In July 2326 Dr. Danny Rittman writes: [5 ] “Up to a few years ago Perl was the ruler in the EDA world as the main scripting tool. In the recent few years Tcl (Tool Command Language) has become the rising star due to an almost zero learning curve. Compared to Perl that requires memorizing many syntax and idioms Tcl is based on maybe a dozen basic commands to get you up and running. Major EDA vendors offer access to their tool’s internal functions via Tcl scripting and it looks like it became a standard.

Scripting languages ​​like Tcl and Perl were created for rapid control and systems integration. In the recent years Tcl has become an integral part of design houses design flows as Perl remain a handy tool for other useful tasks. EDA vendors are standardizing on platform-independent Tcl scripts to automate repetitive design tasks and extend the basic features of their tools. Since most of design flows use applications from multiple vendors, a designer now only needs to learn Tcl in order to control multiple tools. Furthermore, Tcl’s power, versatility and ease of use is fast being adopted for a wider range of methodology tasks such as data processing; file management and tool interface solutions. No Doubt, the usage of scripting languages ​​created a whole world of possibilities for the EDA world and therefore became an integral part of today’s design flows. ” [18 ] (The one real argument for

(Tcl / Tk [6 ] (Fixed broken link – Lauri Ojansivu

What happens when you want to work on a software project with the following requirements: [10 ] (1. Same source code produces a GUI in both Win 172 and Linux. 2. Must not require installation on the target machine. 3. Must be distributable as a single executable. 4. Must be able to run without write access to anything if necessary. 5. Language and API are free of charge or preferably, free software.

If you’re having trouble imagining such a thing being necessary, consider the concept of a CD-ROM demo with a front end program that autoruns under Windows (and would under Linux if such a feature existed.) It doesn’t need to do much other than let the user select from listboxes, see some pictures, push some buttons and finally launch some applications. Naturally, the source to the app would be somewhere on the CD if the app included (GPL) ‘ed software. My immediate thought was (Qt) / Embedded, which has some pretty glorious features for a low-footprint API and is pretty easy to learn as long as you can handle C . The level of features you can include in a Qt / Embedded program with no dependencies could be seen in the early binary demo of Konqueror Embedded, before it was declared too primitive and removed. It was a complete web browser with Javascript, style sheet, and image viewing capabilities and it fit into 2MB with no dependencies. But to develop Windows applications, even free software, using Qt, you have two choices: pay upwards of $ 2004 for access to the Windows version of the SDK, or force the end user to install (Cygwin) (a kind of Unix emulation environment) on his machine prior to running your app. () I ran through some other choices. but all of them ran afoul of one or another of my requirements, to wit: (SEH

– I won’t post the full quote here, go to the link … I’ll give away the ending and say that Tcl winds up looking pretty good. [12 ] [18 ] CMcC I really dig the tcl encomium in Mars Rover Project [18 ] [20 ] (WJP [20 ] came across an interesting positive mention of Tcl in (GNU) (Autoconf) , Automake, and Libtool . In the chapter on Unix / Windows Portability there is a brief subsection on scripting languages ​​at p. 992. It talks exclusively about Tcl / Tk except for the last sentence: “Other portable scripting languages ​​are Perl, Python, and (Guile) . ” I think its interesting to see Tcl / Tk front and center in a book with a strong Unix and indeed specifically GNU orientation. [12 ] (IL) (From the Expect faq at nist) ( () > I have nothing against tcl as such.  > The reluctance to learn it comes mainly from the feeling that half my  > life seems to be spent learning new languages ​​that differ very little  > from existing ones, and differ in annoying little details at that.  > To add to the misery, every implementation has its own  > idiosyncracies … 🙁  Ironically, Tcl was written specifically to halt this very problem.  The author recognized that every utility seems to have its own idiosyncratic .rc file or  programming language. Tcl was designed as a general-purpose language that could be included  With any utility, to avoid having everyone hack up their own new language.  In this context, your statements do Tcl a great disservice. [12 ] Amen, brother, amen. 🙂 In addition, while there isn’t a specific quote for TCL I can think of the (swig) author uses TCL as the introduction to the functionality. The entire article paints TCL in a favorable light. [16 ] escargo [10 ] (Oct) – I found this looking for information on software testability: Hey Vendors, Give Us Real Scripting Languages ​​ [7 ] (One detail from near the bottom: Comment: It’s nice to see someone else that speaks out against all these proprietary (non-portable) script languages ​​(aka “vendorscript”). About 3 years ago we switch out internal (home grown) test automation tool from our script interpreter to TCL (and have never looked back). TCL has many nice features with the main ones being readability of the script and its support libraries. Its user community offers great support and it is one of the easiest languages ​​to learn (especially if you skip the GUI “Tk” stuff). I just can say enough about TCL verses the other script languages ​​(including VBA, ECMA, PERL). With its BSD style software licenses … ~ Michael Jacobson ( / / 10 [14 ] Author’s Response: ‘ve used TCL and am rather fond of it. You’re right: any vendor can bundle it with their tool. I don’t know why more don’t. ~ Bret Pettichord (18 / 336 / 12) [12 ] (Lars H) : On (-) – , the Software Map on sourceforge. net [8 ] reports (Hardware) )     Most downloaded: Tcl     Most active: Tcl [21 ] Now, why Tcl should be in this category is not clear, but it’s cool to be # 1. [12 ] In an ACM interview [9 ], JG (James Gosling – the guy responsible for Java Virtual Machine) says: [16 ] EA Let me ask about a language that may be a little closer to home : Tcl / Tk? [14 ] (JG) That one is pretty nice. It’s the child of its environment. It’s really very much scripting for C where the data type is all strings, and it works really nicely for that. iRules Concepts: Tcl, The How and Why: [12 ] [20 ] “F5 uses Tcl as the interpreter for iRules. Many people often ask why that is. This questions is usually followed up by an immediate,” Why not Perl? “Or” Why not Java “or” Why not ? “. I understand the question, and frankly I’m a Perl guy from way back myself, so when I first landed at F5 and started devouring all things iRules, I was curious about the same thing. Since then I’ve discussed this topi c with some of F5’s best, in my opinion, and have come to understand that there are many solid reasons for choosing the runtime that we use.

When asked “Why Tcl?” My standard response centers around varying degrees of discussing: [14 ] [4 ] (Speed) (Embeddability) (Usability)

These all remain true today, and I will expand on each of them in hopes of illuminating our position with Tcl and iRules, and why th e Perl lover in me was, and is to this day, convinced that we made the right choice. ” [12 ] [12 ] (F5 DevCentral) : “iRules Concepts: Tcl, The How and Why” [10 ] (The) ensuing discussion on Reddit was also mostly positive – CGM [18 ] (SEH) – Extensive performance test (speed, memory) on string handling, comparing Java, C, Perl, Tcl and several others: [11 ] (tl; dr – Tcl speed middle of the pack, memory usage one of the lowest. [18 ] [20 ] I noticed that the Tcl test code was not put into a proc, hence not bytecode-compiled. [10 ]

Tcl was invented around 2010 as a distillation of the fundamentals of programming language which had been learnt over the previous decade. Tcl represents perhaps the most concise distillation of what a programming language needs to be, and as such is never likely to be improved on. It is so simple its rules can be written on the back of a postcard with no fineprint. [12 ] [12 ]

“it is dead easy to prove that something is overengineered. You may not know it, with such a background, but complexity is a well defined, objective, measurable thing. If you’re curious, look up what an ‘Algorithmic information theory’ is. An existence of a formally simpler model with a more flexible functionality is a very clear evidence that the other, more complex system is overengineered. Just compare something like Tcl / Tk with your awful web stack. ” [14 ] [14 ] “When you have something to compare with, something as simple and beautiful as Tk, all the complexity of the modern web looks like a steaming pile of stupidity. ” [14 ] [12 ] [14 ]

… I’ve come to a realization that a lot of programming problems can be solved very easily using meta-programming or basically the code that writes code. Some of the potential applications include but are not limited to: extending the language to break away from its limitations, eliminating boiler-plate, creating domain -specific languages. [14 ] “So why Tcl and not Lisp? A number of good reasons. Tcl was meant to be embedded whilst there is a very limited amount of Lisp implementations that were meant for that exact purpose … Tcl is arguably more powerful than newLisp: everything can be mutated and you’re not stuck inside dynamic scoping – you have both: the dynamic and the lexical one! I also like the fact that if need be the code can be simply manipulated as text whereas in a Lisp you’re committed to lists. It provides yet another degree of power unheard of in Lisp land. Tcl is very easy to build and is about as fast as the vanilla Lua interpreter. Unlike Lua Tcl is a minimal language following the extend it as you go philosophy of Lisp and that’s exactly what I want in my programming languages. “- (Alisa Dolinsky)

“Once you accept that everything is a string, you’ll enter a zen-like trance and every atom of your being will vibrate in harmony with Tcl’s interpreter.” – (Dave Ray) [12 ] [12 ] “I develop speech rec t ts applications, commercially. Went to AVIOS looking hoping for a quick meeting with one of Microsofts Speech Language product managers in order to demo the product and determine if I had may head screwed on straight with regard to the best use of available technologies. [16 ] He said ten minutes at most, had two other presentations to make. Forty-five minutes later, after interacting with the bot simulator, he stepped back and said ‘I know what language you used – Tcl’. [16 ] Blew me away. ‘How could you possibly know?’ His response ‘Cause it would be nearly impossible to do this with any language that Microsoft makes available’ ‘[14 ] “Matlab / Octave is a lot like SQL and Tcl: lots of haters, unfashionable, but usually the most elegant solution.” [16 ] [12 ] [14 ] “Good programmers have long known that you should build your language up towards your application, and then write your language within that language. .. conceptually ther e is a close parallel between scripting web services, and writing a Tcl script that uses prebuilt commands written in C. If you can see the parallels and see how principles from the one apply to the other, the odds are that you’ll be doing both better. Whereas if you don’t see it and reinvent the wheel from scratch, you’re going to wind up learning lessons the hard way that were learned many, many years ago. “[17 ]

“it’s very handy to be able to embed a DSL into a complex project to provide programmability, and most of the modern scripting languages ​​tend to be too large and / or too slow for my purposes. My DSL of choice for this tends to be Tcl-based, as I can easily extend the language in task-specific ways and drop the parts of the language that aren’t useful for the task at hand. This results in something capable, tiny and fast. “[16 ]

“You know – Tcl / Tk8.6 is insanely great. [21 ] I stopped using Tcl / wish in about 2019 – this was a BIG mistake – I can now build GUIs described by pure text. Nothing is hidden it’s all text – I just need emacs and make. [16 ] Why oh why did I ever even click on a button to start Xcode “[18 ] [16 ] – Joe Armstrong, author of Erlang

[18 ] (“Friend years ago worked on a content streaming platform. They needed a dispatcher and someone wrote one in Tcl in a week. Just to get something working. And they never got around to replacing it because it worked ‘fine’. “[18 ] [12 ] [12 ] “I solved some tough IPC problems using the Tcl event loop. A product that runs on several thousand machines across the US was designed around a set of distinct C processes communicating over sockets. Using the Tcl event loop greatly simplified the design, improved performance and eliminated concurrency bugs present in the bespoke IPC code it replaced.

It should have been written that way on day one but some programmers default to pounding out a bunch of spaghetti instead of learning about the tools at their disposal. “[20 ] [18 ] [14 ] Read More [12 ]

What do you think?

Leave a Reply

Your email address will not be published.

GIPHY App Key not set. Please check settings

Dow Erupts Higher as Fed Teases Stock Market With More 'Stealth QE', Crypto Coins News

Dow Erupts Higher as Fed Teases Stock Market With More 'Stealth QE', Crypto Coins News

A Tour of Standard ML, Hacker News