Well, "wrap everything" is not really a concern (phew!) and I can't see how would anyone "lose all the powerful things D let's you do" with D being the language you'll write most of the code, anyway.
But maybe you're right about writing everything always in D!!! It's, hands down, the final answer to everything anyone would want, isn't? I wonder if there is some way of warning people who write software in Javascript, PHP, Ruby, Python, Perl, Erlang, Elixir, Tcl and all those other clearly inferior languages about that... I'm pretty sure they'll switch to D right away!!!!1!
(Just kidding: I'm writing Til because I want to and nothing more.)
The main reason for this was to allow each class to have its own specific behavior (specially when evaluating), pushing some work into the parser instead of the runtime, since a SubList is a list of lists while a SimpleList is always a plain list itself, so no need for ".plain" methods in the last one. This makes things faster and the cognitive load is not affected so much (on the contrary, probably: I feel the syntax seems more familiar in the end).
> The De facto super set of D code will always be D.
Well, I'd like to make it clear that creating a "de facto super set of D" is not my objective, anyway.
But I'd like to say that, although compiled languages are nice and D is really amazing, I don't even dream of using D to create some quick-and-dirty scripts, the same way I don't even dream of using Til to create shell scripts (I never met any general-purpose language that served as a nice shell, Tcl being the closest one, but still - it's not a traditional shell and the experience is only tolerable, IMHO).
Furthermore, it's also not my objective with Til, but I believe, anyway, that a nice scripting language on top of D would prove very beneficial to the language - it's interesting to try it, right? At least to see what happens...
> Kudos to the TIL's author for trailblazing this idea based on TCL. It will be very beneficial and handy for scripting commands and shell like behaviors.
Thanks! I love the concept of "scripting" (that is a bit different from simply a "dynamic language"). I'm quite aware it's just "yet another programming language" but if I can dream of something is that it serves as some kind of incentive for people to develop more libraries in D.
I mean, if you just want to create a Til module that allows you to serve some Web pages using HTTP/2, it shouldn't be that difficult and, at the same time, it could be the end goal itself: just creating a useful module, not something like "it's a crucial part, besides other five, of this big project X I'm working on" (I believe this kind of situation almost always ends with "nah, I'll just use <mainstream language> instead").
> Just wondering is this type based TCL like language similar to Little?
No, it's not. I first heard about Little a couple months ago and it's a very interesting project. But I don't plan, right now, to include any kind of builtin Tcl compatibility layer in Til (although users are free to create its own implementations, of course).
> [2] Will it eventually support compilation similar to Emacs Lisp? [3]
I created the language much more as a tool to learn how to create languages than anything else, but now it's kind of mature enough, I'll confess my dream is to implement JIT compilation, following the steps of LuaJIT (that is an AWESOME project IMHO).
> Personally I'd love to have superset language in D for data science.
And it has a lot of debugging code. Loading a string, parsing it as a "SubProgram" and running it is kind of trivial.
Now, about the prototyping part, I never thought about it, actually...
> On top of that it should have excellent support for array, ndarray and dataframe like R [4].
It's very easy to create new types in Til and they support both "operate" (to apply, you know, operators, like +, -, /, etc) and "extract (to index things or extract information in general from values). I believe it wouldn't be difficult to create a nice module for using these things.
> Since it is based on D, then it can fulfill the requirements for both type A and B data scientists [5].
Maybe. But, I don't know... isn't data scientists all over the world happy and satisfied with Python, already?
Wow... you picked up just the right example. I mean, hex values are just a perfect scenario - was that simple integer values I probably would disagree (I don't like the possibility of messing with diffs in the case some variable receives a big name, for instance).
Now I'm thinking about math, also. The assignment with "=" is not a thing on Tcl-like languages in general, but maybe some "formulas" would benefit from more spacing, like
set x 1 + 2 + 3
set y 1000 + 2000 + 3000
(or something like that. YMMV)
Okay. I'm changing that as soon as I can. Thank you very much.
Fair enough.
I'm willing to know about use cases for more than one space - and I'm completely sincere. The language is just born, we have time to adjust all these details.
But maybe you're right about writing everything always in D!!! It's, hands down, the final answer to everything anyone would want, isn't? I wonder if there is some way of warning people who write software in Javascript, PHP, Ruby, Python, Perl, Erlang, Elixir, Tcl and all those other clearly inferior languages about that... I'm pretty sure they'll switch to D right away!!!!1!
(Just kidding: I'm writing Til because I want to and nothing more.)