What I Hate About Your Programming Language
Subject:   What I hate about Tcl
Date:   2003-05-14 07:04:45
From:   anonymous2
Response to: What I hate about Tcl

If you think Tcl's list and associated array are so powerful, you need to try a real scripting language like Ruby, Perl, or Python. Each of your points are also true for each of them.

Tcl survives for three reasons: Tk (still one of the most portable and ubiquitous GUIs), commercial CAD tools, and easy embedding.

The language itself is truly terrible. I cringe every time I have to touch it.

Full Threads Newest First

Showing messages 1 through 3 of 3.

  • What I hate about Tcl
    2003-05-14 12:25:21  sharkey [View]

    "Truly terrible" is a bit of an overstatement.

    It suffers from a commitment to overwhelmingly simple command syntax. All commands are "operator arg arg arg...", so instead of "$a = $b", you end up with the ugly "set a $b".

    Simplicity is not always beautiful, but it does make embedding really easy. (in commercial CAD tools, tuxracer, network routers, or wherever)

    And Tk rocks!
    • What I hate about Tcl
      2003-05-14 16:45:14  setok [View]

      > you end up with the ugly "set a $b".

      I just tend to appreciate the beauty and power that kind of thing offers ;-) You can't have everything and logical simplicity is something that has always appealed to me, as a CS person. It's kind of funny too that people would complain about the above in Tcl, but don't complain about exactly the same thing in Lisp.

      Ah well... RMS prefers Lisp so it must be brilliant?
  • What I hate about Tcl
    2003-05-14 16:41:19  setok [View]

    > The language itself is truly terrible. I cringe
    > every time I have to touch it.

    This seems like a horribly broad statement. As many of my friends know, Tcl is quit my favourite language by a fair margin. Not because of Tk or the associative arrays (I know other languages have them). What I truly love about Tcl is the way it doesn't limit how itself can be extended: it has a very simple syntax -- much simpler than almost any other language besides Lisp -- which can be extended in all sorts of directions with ease. There are no special cases or reserved keywords or static language constructs. I like to say "Tcl doesn't provide you with any programming paradigm -- you just [package require] the one you want".

    Add to that the fabulous event-based IO, virtual filesystems, "everything-is-a-string" and a lush variety of OO possibilities (from [incr Tcl] to XOTcl and Snit) and it is difficult for me not to like what I see.

    I hate to sound like I'm making a marketing pitch. I can accept that my points may not convince everyone, but your bold statement just made me see red and I do not believe it was justified in the slightest. If you wish to say something like that on a public forum, please offer us the courtesy of at least trying to explain your position.