4 ms·
I wish, I wish, I wish .. something like this is done for Tcl/Tk I like Tcl the language a lot, and I love the idea of two language systems One high level for
by systems 8y ago
I wish, I wish, I wish .. something like this is done for Tcl/Tk
I like Tcl the language a lot, and I love the idea of two language systems
One high level for scripting Tcl
One low level for high performance commands and parts Rust
You can of course do that today, using Tcl and C
But .. well C is no Rust
- jadbox 8y agoWhy do you like Tcl? I worked at a place that used it for their general purpose web servers... and most of their programmers complained that it was like using Fortran for modern web development. That's the only experience I've had with Tcl professionally in the field.
- systems 8y agoI think you really have to like the idea of 2 language system, to appriciate the potential of Tcl Having one team create complex tool using Rust, or Ocaml or Go or C++ And another team more domain oriented, created UIs and Interfaces and Script using Tcl (a language that is simple enough , yet powerful enough) The one size fit all language, dont exist, I think, a two language team, is very good option A (stretched) example, is SQL ..and the DBMS Expert programmers enrich the DBMS using C++ or whatever And domain experts use SQL and Procedureal-SQL to solve business problems Tcl as a universal declarative language, is an idea I like
- earenndil 8y ago> The one size fit all language, dont exist Lisp? (or perhaps lisp is an n language system)
- systems 8y agoI think any one size fit all language, will have to have optional typing, and be both compile and interpreted i dont know of any language, that have both, and was successful Not sure if clojure specs, achieve the same outcome of optional typing, so maybe you have a point :)
- giancarlostoro 8y agoRacket does have Typed Racketif that counts?
- earenndil 8y ago> optional typing The problem with that is that all the languages seem either to inherently be dynamic or static. Any attempt to add the other kind is hamstrung by the language's inherent tendencies, and it doesn't really work. Perl or python, for instance, have optional typing, but it's not checked at compile-time. And then there's things like c++ or d variant that--again, they don't quite feel quite as dynamic as they would in a dynamic language. I don't think these features can truly coexist well in the same language. > both compile and interpreted That's no hard ask. You just have to fight inertia, but there's really not much standing in the way of something like that.
- dragonwriter 8y ago> The problem with that is that all the languages seem either to inherently be dynamic or static. Any attempt to add the other kind is hamstrung by the language's inherent tendencies, and it doesn't really work. Perl or python, for instance, have optional typing, but it's not checked at compile-time. Python optional typing is checked in an optional pre-compilation step. Except that there is no opportunity to use typing for optimization, this isn't meaningfully different, when used, from being checked as part of compilation. In fact, other than using type information for optimization it's pretty much what most compile time type checking does; compilation isn't an indivisible atomic step.
- timbit42 8y agoTcl is definitely not like Fortran. Everything is a string. https://en.wikipedia.org/wiki/Tcl https://en.wikipedia.org/wiki/Tcl
- pjmlp 8y agoOnly if you are speaking of pre-Tcl 8.0.
- coldtea 8y ago>and most of their programmers complained that it was like using Fortran for modern web development That's because they weren't capable of appreciating a language outside of fads and posts to social media.
- pjmlp 8y agoIn the early 2000's, I was part of a startup delivering an application framework for web development based on Tcl/C, similar to AOLServer, just with our own view how it should actually look like. It was a memorable experience, which I still fondly remember. However it was also what made me not invest in languages without JIT/AOT thereafter, having to always dive into C all the time. The relation of Tcl/C code changed quite heavily during the growth of the company, until we eventually rebooted our stack on top of the newly released .NET. Something that we keep seeing on those "X rewritten in Y" over here.