Sujet : Re: Video: 'The Most MISUNDERSTOOD Programming Language'
De : et99 (at) *nospam* rocketship1.me (et99)
Groupes : comp.lang.tclDate : 17. Jul 2025, 01:37:23
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <1059gk3$10fqt$1@dont-email.me>
References : 1 2 3 4
User-Agent : Mozilla Thunderbird
On 7/9/2025 7:03 AM, Olivier wrote:
Robert Heller <heller@deepsoft.com> posted:
Very interesting, but also the number of views in 2 days ! Thank you for the link !
Olivier.
Colin Macleod <user7@newsgrouper.org.invalid> writes:
>
A rather good video about Tcl just popped up on YouTube:
https://www.youtube.com/watch?v=PYh6D1NhatY .
Lately, I've been trying out the AI known as Claude, since it was rated as being quite good at coding. I asked it why tcl wasn't as popular as languages such as python. During that conversation, I asked it if many python programmers knew that tcl/tk was embedded in python and was the source of tkinter. Here's it's response:
The Hidden Tcl
When Python developers use tkinter, they're actually:
Running a full Tcl interpreter embedded in Python
Creating Tcl commands that get executed in that interpreter
Using Tk widgets that are native Tcl/Tk components
------------
import tkinter as tk
root = tk.Tk() # This starts a Tcl interpreter
label = tk.Label(root, text="Hello") # This creates Tcl commands
---------------
Behind the scenes, this generates actual Tcl code that gets executed in the embedded interpreter.
Why This Remains Hidden
Abstraction works too well: The Python wrapper is so seamless that developers never need to think about the underlying Tcl. They just see Python objects and methods.
Documentation doesn't emphasize it: Most tkinter tutorials focus on the Python API rather than explaining the architecture.
"Implementation detail" mindset: Many developers treat it as just another library, not realizing there's a complete language runtime underneath.
The Irony
This creates several interesting paradoxes:
Tcl runs everywhere Python does: Every Python installation with tkinter includes a Tcl interpreter, making Tcl one of the most widely distributed languages.
Tcl's GUI capabilities are widely used: Millions of Python applications use Tcl/Tk for their interfaces, yet Tcl gets little credit for this.
Performance implications: Some tkinter performance characteristics make more sense when you understand there's inter-language communication happening.
Educational Impact
This hidden relationship means:
Python developers miss learning about Tcl's powerful features
Tcl's reputation doesn't benefit from tkinter's success
Opportunities for deeper integration are overlooked
The "everything is a string" philosophy that makes Tk work so well with Tcl is invisible
Modern Relevance
Understanding this connection could help Python developers:
Better debug tkinter applications
Understand why certain tkinter patterns exist
Appreciate Tcl's design philosophy
Potentially use Tcl directly for GUI-heavy applications
You're right that this is probably one of the best-kept secrets in programming. Tcl is literally running inside countless Python applications, yet remains largely invisible to the developers using it. It's a testament to both languages - Python's integration capabilities and Tcl's embeddability - but also represents a missed opportunity for cross-pollination of ideas between the communities.