Live data from Hacker News

Tcl 9.0

tcl-lang.org

141–150 of 247 posts

Re: Tcl 9.0

#141
Love reading this. I spent a few years in the late 90s using Tcl/Tk to build cross-platform installers for Embedded tools/libraries, along with Expect for a bunch of our testing. One of those pragmatic toolsets for getting sh*t done.

Re: Tcl 9.0

#142
post #130
post #53

I can't overstate my love for Tcl, yet I had only a little chance to use it when writing XiRCON IRC scripts back in the late 90's. Such an elegant language: simple, easy to learn, flexible. I call it Lisp for humans. I wish it were more popular. So glad to see that it's still alive and kicking.

>I call it Lisp for humans. Except for upvar.

What's upvar? :-)

Re: Tcl 9.0

#143

Earlier quoted context omitted.

The Zip filesystem stuff is wonderful change to see: it takes a number of techniques that were common in the community (if you had the right tools and knew how to use them) for building standalone applications, and makes them part of the basic toolkit in a standard way. It's a truly excellent change, and I'm glad to see it.

Can you explain what zip filesystem is?

A handler for treating .zip (and .jar and .tar ...) files as if they were a volume mounted at /home/user/foo.zip - e.g. https://github.com/openjdk/jdk/blob/jdk-21-ga/src/java.base/...

It may be easier to reason about when thinking of the way $(mount -o loop) works with .iso files -- a file that is a container for other files that one can mount as if it were a filesystem

I was expecting pathlib in Python https://docs.python.org/3/library/pathlib.html> to have one since a lot of Python distributions ship the standard library in .zip files but evidently not. Python gonna Python in that way

Firefox actually used to ship with that same "jar:" protocol handler, too, and I made good use of it for reading the javadoc html which was shipped inside zip files and was indescribably easier than trying to manage all the .html files in a Java 8 SDK distribution. They made heavy use of this because a lot of their internals were in .xpi formats (which is also a .zip file) but they recently dropped it because Firefox gonna Firefox^W double down on some random shit other than making a sane browser

Re: Tcl 9.0

#144

Earlier quoted context omitted.

The Zip filesystem stuff is wonderful change to see: it takes a number of techniques that were common in the community (if you had the right tools and knew how to use them) for building standalone applications, and makes them part of the basic toolkit in a standard way. It's a truly excellent change, and I'm glad to see it.

Can you explain what zip filesystem is?

I'm not a TCL user, but from the description of wduquette is sounds similar to Python's zipapp

https://docs.python.org/3/library/zipapp.html

Re: Tcl 9.0

#146

Language snobs and 1990s OO snobs really love to hate on tcl - yeah everything is a string or a command, and the OO extensions were kind of kludgy - but there's a design ethos to the ecosystem that is really special. Ditch tkinter, which is basically writing python to write tcl, and try doing a GUI in straight tcl/tk. Try the sqlite interface. Write a modest C extension or wrap a library. So much of it just works.

> yeah everything is a string or a command

And you're not kidding about everything being a command - this here is some "what the fuck is wrong with you people": https://wiki.tcl-lang.org/page/comment

Including the truly stunning collection of:

- one must terminate the command with ; before one can comment

- one cannot have mismatched braces so don't try to comment out bogus code

- one cannot have a backslash in a comment but hey it's a feature not a bug because this is how they launch wish:

  #!/bin/sh
  # the next line restarts using wish \
  exec wish8.0 "$0" "$@"
since the backslash is ignored by the shell but parsed by wish

Re: Tcl 9.0

#147
post #130
post #53

I can't overstate my love for Tcl, yet I had only a little chance to use it when writing XiRCON IRC scripts back in the late 90's. Such an elegant language: simple, easy to learn, flexible. I call it Lisp for humans. I wish it were more popular. So glad to see that it's still alive and kicking.

>I call it Lisp for humans. Except for upvar.

CMake similarly is sick in the head: https://cmake.org/cmake/help/v3.30/command/set.html#normal (heh, I enjoy that the documentation anchor is "normal" for SET(FOO BAR PARENT_SCOPE)

Re: Tcl 9.0

#149

Are there any good tcl web frameworks ?

~~A very famous(? infamous?) one: https://github.com/aolserver/aolserver#readme~~ sorry, https://news.ycombinator.com/item?id=41663259 does a much better job answering than my link

Awesome! Can’t wait to play with this some more tomorrow. TCL looks like a fun language for my hobby projects.

Re: Tcl 9.0

#150

Why are they still on SourceForge? To me, SourceForge feels like one of those scammy download sites that installs spyware.

Sourceforge still works, and is (now) reliable. The awful DevShare malware stuff that Sourceforge started (under new ownership) in 2012 was stopped (under different new ownership) in 2016.
Post reply on HN