Hacker News new | past | comments | ask | show | jobs | submit login

It has evolved some. Initially, TCL used C strings, and there was no way at all to use any binary data with a null in it. No copying binary files, no non-trival sockets work, etc. And lists being runtime parsed strings of "{blah {blah}} {\{blah}" remains slow and cumbersome. In the 90's, I switched to Perl to get past some of these things.

Don't get me wrong, I love it too, but it has warts just like any other language.

Ousterhout is clearly an outlier thinker though. Not just the father of TCL and TK but log structured filesystems, RAFT consensus, and more. I'd be excited if he jumped back into a new language project based on his reflective experience. I imagine a more pragmatic Perl 6 or similar.

You’re right re: it’s early internals, and we probably both know people who still (mistakenly) complain about that. Conceptually the “everything is a string”(EIAS) model still holds though, even though it’s supported by dual-ported “objects” w native representation, and the running is often byte-compiled instead of string parsing. We’ve got early smart fans who saw the vision and possibilities like Karl Lehenbauer, Don Libes, Richard Hipp, and the current core team like Kevin Kenny, Don Porter, Donal Fellows, etc who deeply understand What Tcl Is, and strictly maintain it, even while pushing it ahead (TclObj, finally an in-core blessed object system, native database framework, Miguel Sopher’s(RIP) work on the stackless non-recursive engine (NRE) and coroutines that fell out of that work...

Back to Ousterhout though, you might dig his “Philosophy of Software Design”[0] book, or talks associated with it[1].

Lots to like in this space...

[0] https://www.amazon.com/Philosophy-Software-Design-John-Ouste...

[1] https://youtu.be/bmSAYlu0NcY

Just bought the book. Thanks for replying with some valuable insights!

Re: more pragmatic Perl 6 or similar.

Please note that Perl 6 has been pragmatically renamed to Raku (https://raku.org using the #rakulang tag on social media).

Applications are open for YC Summer 2020

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact