4 ms·
I 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 G
by systems 8y ago
I 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.