4 ms·
Don't get too focused on "scripting". making one today and you learn quickly, that scripting/compiled is blurred. Eventually, both will borrow a little of the o
by mamcx 5y ago
Don't get too focused on "scripting". making one today and you learn quickly, that scripting/compiled is blurred. Eventually, both will borrow a little of the other to be more performant or useful.
---
I'm building on the side one (https://tablam.org https://tablam.org) that is focused in the "crud" kind of apps and exist a lot of low-hanging fruit there. Simple stuff like making the paradigm relational/array from the start, support for decimals (and money and quantities?), in-built auto-vectorization (that comes almost for free when adding a bit of array languages) and a lot of other stuff I can't even explored yet.
Current scripting languages are not there yet in ergonomic or features to the kind of apps we actually do (ie: The popular ones, you bet niche experiments like mine are there on way or another).
---
And the challenge is even harder today!. In the article is mentioned better support for IDEs, that is more thought that I have expected!. This requiere a more sophisticate parsing pipeline and not much experience there around...
Also: Concurrency/parallelims. I don't think exist a truly nice ergonomic there. Sure, async/await is a little better, but none of the things I have experienced (with exception of SQL and magic) is something I could give to a "scripting user". You still need a complicated understanding of this, plus how express that in code.
Plus: Performance. Is possible to build very fast "scripting" languages! But is VERY hard to be fast across many workloads :(
And is terrible, because the kind of developers don't use them (C/c++ cough) will complain LOUDLY how terrible them are, and how you must not use them, when certain workload is not as optimal!
- dragonwriter 5y ago> scripting/compiled is blurred “scripting” is an application domain, and a scripting language is one focussed on that domain (and, yes, its a domain with blurry boundaries.) “interpreted/compiled” is a (blurred, sure) implementation distinction. scripting languages tend to be interpreted, but talking about scripting vs. compiled is conflating two different axes of description.
- mamcx 5y agoI like the "application domain" angle. It fits well...
- jbergens 5y agoAren't scripting languages normally JIT:ed nowadays? Js has been for years but I thought both Python, PHP and Ruby were working in that direction. That sounds like all the major ones to me.
- mamcx 5y agoNot all, and some "JITs" are not of the "make assembler" version. You can "JIT" on top of your own bytecode. Or not have a bytecode and compile to lambdas...
- 7thaccount 5y agoThat's cool. Reminds me a little of Perl6 (now called Raku), but you use English syntax instead of all the operators and hyperoperators and stuff.