vincent-manis
9 hours ago
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.
ofalkaed
8 hours ago
>you can have Tk (as long as your Cobol allows you to call C).
No C required, you can just connect to the UI through a socket and often skip the FFI completely. This is my preferred way to use Tk and I don't even consider anything else unless there is a reason. Working this way also has the nice side effect of making the application UI agnostic.
WalterGR
8 hours ago
But then you have an entire front end written in Tcl or some other non-COBOL language (to continue the above example,) right?
Or is there a way to run Tk as a daemon?
ofalkaed
7 hours ago
Believe you have to do that anyways unless you are going to create full language bindings as tkinter and the like do. I don't know the Tk API in full but I don't believe it provides ways to create widgets, just interact with them more directly. Perhaps someone more knowledgeable will fill in the gaps here, I learned what I needed of the Tk API and called it good.
em-bee
7 hours ago
that sounds interesting. can you give an example please?
ofalkaed
7 hours ago
PureData is a good example.
kevin_thibedeau
4 hours ago
> interfaces to Tk
It interfaces to its own internal Tcl interpreter that runs Tk. You can even feed it arbitrary non-Tk commands to eval.
This is a legacy of the trouble Perl/Tk had splitting it out as an independent library which the Tcl devs didn't want to support.
forinti
8 hours ago
When I first found out about Tcl/Tk, it was used to give a GUI to programs written in C. I've used Tk with Tcl and many times with Perl too.
em-bee
9 hours ago
in what way is Tk basic? can you elaborate? also what are your thoughts on the issues with python as mentioned in the article? how do the scheme bindings compare?
piloto_ciego
9 hours ago
This is a fun idea! Are you using Guile-tk?