Andrei's list of barriers to D adoption
Adam D. Ruppe via Digitalmars-d
digitalmars-d at puremagic.com
Fri Jun 10 07:34:53 PDT 2016
On Friday, 10 June 2016 at 11:11:49 UTC, Chris wrote:
> Nice. Anyone interested in turning this into "DScript"? Having
> a scripting language powered by D would also boost D's
> prestige. And it would be easy to write modules in pure D.
So I use my toy thing from time to time and it is pretty cool. My
favorite part (and the reason I made it) is the easy interop with
D itself: you basically just assign your D functions and values
to a global object and get them out via the same var type - in D!
var globals = var.emptyObject;
globals.write = &(writeln!string);
var result = interpret(your_script_string, globals);
writeln(result);
where the script string looks like:
write("Hi!");
10 + 3 * 4;
and it will work:
$ dmd test.d arsd/script.d arsd/jsvar.d
$ ./test
Hi!
22
So really easy to use in all three ways: D interop is easy, the
script lang itself is easy, and compiling it is easy, it is just
the two modules.
I've even did a bit of GUI and DOM wrapping with it and my
simpledisplay.d and dom.d in toys... a surprisingly big chunk of
things just work.
The downside though is that it is something I basically slapped
together in a weekend to support var.eval on a lark... it has a
few weird bugs and the code is no longer beautiful as it has
grown organically, and it isn't very fast, it is a simple AST
interpreter that makes liberal use of new objects in D (even like
a null object is allocated on the D side), but it is REALLY easy
to use and coupled with native D functions for real work, it
might just be interesting enough to play with.
tho idk if I'd recommend it for serious work. Just use D for that!
More information about the Digitalmars-d
mailing list