I use Tk routinely in Scheme; there is no Tcl in my code, but Tk is a very nice (though basic) GUI kit, and my programs work on Linux, BSD, MacOS, and Windows. Other commenters have mentioned that Python ships with Tkinter, a library module that interfaces to Tk. I believe Ruby does the same. Hell, if you're programming in Cobol, you can have Tk (as long as your Cobol allows you to call C). You do not have to love Tcl to love Tcl/Tk.
vincent-manis
> Those GUI apps look native on Windows, Linux and macOS
I don’t see how the author can write this with a straight face.
The apps look like what native apps looked like in 2003.
drdexebtjl
Still find Tcl/Tk surprisingly effective for simple cross-platform GUI utilities. The `wish` shell was my go-to for quick internal tools.
lampcord
I was an early adopter of the TiVo. You can hook up a terminal to those things. A dumb terminal or terminal software on your computer using your own serial port. There was a terminal/serial port in the back (baud 2600)that took the form of a 3/4" audio plug.
It was a Linux system, but all their own software running on it was written in TCL.
I don't think they were using TK though.
Pretty fun to hack around with. Since it was connected to the phone line, when a call came in it could get the caller ID off the line and display it on the TV screen.
dragonfax
It made me remember, me learning programing and building random GUIS app in tkinter and python.
kelvinjps10
Tkinter or other Tk based GUI interfaces are the immediate tool I reach for whenever I build something that's not in the CLI or in the browser.
My general "daily driver" is python and I love that I can just spin up a cross-platform tool immediately with it. Tcl/Tk rule and are insanely useful.
Worked on a NASA ground control system written in Tk. It was a great way to learn about classic design pattern because we had to roll our own event reactors, observers, plugins.
Honestly it feels very outdated compared to the reactive type of GUI's we have today.
Maybe there are some nice wrappers now that help...
I'd give a Rust based version a try. Just compile into a binary for your platform and off you go.
kooi
I take issue with the only 100 MB footprint, that is still pretty big when consider fasm, tcc and rebol are all closer to 1 meg.
tehologist
> Alas, the complexity of its meta-object compiler (MOC)
Do these people use the same template when writing about GUIs? I mean what's complicated about MOC? In CMake it's even transparent and the user doesn't even see it. I swear, the same argument coming back year after year. "MOC" is complicated, but the compiler itself and ld isn't?
comments (10)
vincent-manis
I don’t see how the author can write this with a straight face.
The apps look like what native apps looked like in 2003.
drdexebtjl
lampcord
It was a Linux system, but all their own software running on it was written in TCL.
I don't think they were using TK though.
Pretty fun to hack around with. Since it was connected to the phone line, when a call came in it could get the caller ID off the line and display it on the TV screen.
dragonfax
kelvinjps10
My general "daily driver" is python and I love that I can just spin up a cross-platform tool immediately with it. Tcl/Tk rule and are insanely useful.
piloto_ciego
inatreecrown2
Honestly it feels very outdated compared to the reactive type of GUI's we have today.
Maybe there are some nice wrappers now that help...
I'd give a Rust based version a try. Just compile into a binary for your platform and off you go.
kooi
tehologist
Do these people use the same template when writing about GUIs? I mean what's complicated about MOC? In CMake it's even transparent and the user doesn't even see it. I swear, the same argument coming back year after year. "MOC" is complicated, but the compiler itself and ld isn't?
self_awareness