Live data from Hacker News

Tänzer – An industrial web server framework for Tcl

tanzer.io

51–60 of 81 posts

Re: Tänzer – An industrial web server framework for Tcl

#51

if {[llength $argv] \n\n" exit } set HOME [pwd] set DATABASE [lindex $argv 0] set DIM 10000 proc CalcLine {line} { set termData [lindex $line 1] set termDataLength [llength $termData] foreach {x y} $termData { set score1 0 set score2 0 set score3 0 foreach sData [split $y {:}] { set sd [split $sData {,}] set score1 [expr {$score1+[lindex $sd 0]}] set score2 [expr {$score2+[lindex $sd 1]}] set score3 [expr {$score3+[l…

Please explain for the masses!

Re: Tänzer – An industrial web server framework for Tcl

#53
Tcl is pragmatic. I still use it for one-off projects with simple GUIs via Tk. I get grief from co-workers for the language, but my projects are typically done and correctly functioning in a fraction of the time it takes our Java and C# devs to even prototype a utility.

Below is a walkthrough of Tk which compares identical implementations of examples in Pearl, Ruby, Python, and Tcl. See if you can spot which of the scripting languages are more concise. Hell, I'd even call Tcl more readable in most of the cases:

http://www.tkdocs.com/tutorial/

Kudos to the author of Tänzer for doing his part to keep the oft-overlooked Tcl alive.

Re: Tänzer – An industrial web server framework for Tcl

#54
post #4

How prevalent is Tcl usage in the real world? You don't hear much about it, are there any new startups adopting it? Or is it only used in legacy projects at large companies?

Tcl was at the core of StoryServer (aka Vignette, aka OpenText) - a Web Content Management System. Some large enterprises were (maybe still are) running their Web sites on StoryServer 4.2 (Tcl) until a few years ago. It was certainly quite popular in early 2000. Then StoryServer was renamed to Vignette, then they added ASP support, after that JSP, after that outsourced everything and that was the end of it. An elegant, small and fast engine turned into a mountain of jar files and APIs that take 200 man/hours to add 2+2.

Tcl is a beautiful language, very easy to learn and very powerful. I remember reading an article by the creator of Tcl where he was amazed that Tcl is used in very different way from what he envisioned. He meant to have Tcl as a glue, high level logic layer, while low level performance-critial stuff would be done in C. That is why Tcl (1) has great support for C and (2) has ugly way of doing arithmetic (e.g. [expr $x + 1]). Truth is that Tcl was never meant to add numbers. But instead people started writing all kinds of software in it, that went far beyond glue layer.

Anyways, yet another great forgotten language.

Re: Tänzer – An industrial web server framework for Tcl

#55
post #4

How prevalent is Tcl usage in the real world? You don't hear much about it, are there any new startups adopting it? Or is it only used in legacy projects at large companies?

* SQLite is a Tcl project that "escaped into the wild" and in Richard Hipps own words, would not have been possible without Tcl.

* F5 and A10 front-end traffic management use Tcl at their core -- here's an interesting article from F5 about re-visiting that design decision: https://devcentral.f5.com/articles/irules-concepts-tcl-the-h...

* Tealeaf (http://www-01.ibm.com/software/info/tealeaf/) uses Tcl at the core of its capture appliances.

* Tcl has exceptional testing capabilites -- tcltest drives a lot of the tests for SQLite for example, and is the core of dejagnu, the test harness that drives gcc testing (probably among other things).

* Attempts to replace Tcl at NBC (http://www.researchgate.net/publication/247290458_Prototypin...) have apparently gone on for years -- but nothing has managed to do it.

* Tcl was used in prototyping mars rover work (http://wiki.tcl.tk/13456)

* Tcl is used in chip design (http://wiki.tcl.tk/12897) and other CAD work

* Tcl is at the core of high-end Cisco products... and on and on and on...

I think this[0] really sums up "where is Tcl these days"... it really is out there, if that makes you feel better about using it. If that doesn't matter -- the sheer joy of a solid, battle-tested, fun-to-use language/framework might be enough to draw you in. Try it. You'll like it.

[0] http://www.reddit.com/r/programming/comments/1a1ynm/tcl_the_...

Re: Tänzer – An industrial web server framework for Tcl

#56

Tcl is pragmatic. I still use it for one-off projects with simple GUIs via Tk. I get grief from co-workers for the language, but my projects are typically done and correctly functioning in a fraction of the time it takes our Java and C# devs to even prototype a utility. Below is a walkthrough of Tk which compares identical implementations of examples in Pearl, Ruby, Python, and Tcl. See if you can spot which of the s…

Her part =)

The problem with humble and beautiful people and things is that, being of such a disposition, one is often not wont to market and self-promote, something I find to be quite endemic of the ever decreasing Tcl community. However, since I've decided to crush my Impostor Syndrome with a pointy heel, I've determined that there's no reason to be shy any longer.

Nothing good comes of faulty and detrimental meekness. Therefore I am creating this grandiose and megalomaniac caricature of myself and a web server framework to show the world that, just because a thing isn't well-marketed, that it doesn't deserve to exist, by, well, solving the bootstrapping problem of insufficient marketing. And maybe making some lovely software in the meantime.

I think I could go on and on for hours about the technical benefits of Tcl, and even make a non-ironic shit-eating grin through an explanation and ownership of some of its flaws (for instance, lack of garbage collection in TclOO), but I'd like to think this whole hootenanny makes a good object lesson in uniting people and spirits in joyous community and technical excellence.

TkDocs.com is a great resource, by the way, and is something I'm taking cues from for writing some more in-depth tutorials and "Getting Started" guides and cookbooks for tänzer. Speaking of which, if you or anyone else you know have any interest and time in helping me with my honey-do list (because "issue tracker" doesn't have that "je ne sais quois" I'm looking for here), that'd be absolutely bloody brilliant.

Thanks for your love!

Re: Tänzer – An industrial web server framework for Tcl

#57
post #40

Relaying for xan: Part of my reason for being so hellbent upon proliferating tänzer is to improve the state of affairs for Tcl's perception by the wider community. It's a beautiful language, and a well-considered ecosystem. It never really ceased being that as it aged ever so gracefully, so I figure I shall become some larger-than-life PARTY HARD AND LISTEN TO BEAUTIFUL MUSIC! figurehead to spread some cheer and joy…

>Part of my reason for being so hellbent upon proliferating tänzer is to improve the state of affairs for Tcl's perception by the wider community. It's a beautiful language, and a well-considered ecosystem.

After being impressed by the "GopherJS" golang to js transpiler, I would love to see a corresponding Tcl/Tk to js transpiler, particularly one with Tk supported as transparently as possible in a browser canvas (or whatever). Greater than 90% of the GUI utilities I write can be handled using Tk's stock widgets. The ability quickly mash together a Tk interface in Tcl/Tk and compile it to js would be a productivity multiplier.

It's almost 2015 and front-ends are still a bear to write and maintain and keeping up with the js framework fads is exhausting. GUI development can and should be as easy as Tk made it ~20 years ago.

Re: Tänzer – An industrial web server framework for Tcl

#58

Tcl is pragmatic. I still use it for one-off projects with simple GUIs via Tk. I get grief from co-workers for the language, but my projects are typically done and correctly functioning in a fraction of the time it takes our Java and C# devs to even prototype a utility. Below is a walkthrough of Tk which compares identical implementations of examples in Pearl, Ruby, Python, and Tcl. See if you can spot which of the s…

That's cheating a bit, since it's comparing the other three languages via their binding to Tk, and bindings always introduce impedance mismatch. Tk was built and designed to bind to Tcl.

For instance, in one example I happened to look at, the article discusses how to create a text widget that binds to a string. Since Python strings are immutable, in Python you have to create an extra StringVariable and pass that in, whereas in Tcl it's just a single line that binds a variable. But the fact that Python is a bit klunkier on this specific task hardly says anything about the relative strengths of either language in general.

Re: Tänzer – An industrial web server framework for Tcl

#59
post #40

Relaying for xan: Part of my reason for being so hellbent upon proliferating tänzer is to improve the state of affairs for Tcl's perception by the wider community. It's a beautiful language, and a well-considered ecosystem. It never really ceased being that as it aged ever so gracefully, so I figure I shall become some larger-than-life PARTY HARD AND LISTEN TO BEAUTIFUL MUSIC! figurehead to spread some cheer and joy…

>Part of my reason for being so hellbent upon proliferating tänzer is to improve the state of affairs for Tcl's perception by the wider community. It's a beautiful language, and a well-considered ecosystem. After being impressed by the "GopherJS" golang to js transpiler, I would love to see a corresponding Tcl/Tk to js transpiler, particularly one with Tk supported as transparently as possible in a browser canvas (or…

Check out what this suave devil cranked out. He's got a JimTcl version in the making, too!

https://github.com/aidanhs/emtcl

Drop in on #Tcl on freenode and say hello!

Post reply on HN