Does a Interpretation-Engine fit in phobos ?
Ola Fosheim Grøstad via Digitalmars-d
digitalmars-d at puremagic.com
Thu Jun 30 10:55:39 PDT 2016
On Thursday, 30 June 2016 at 15:53:19 UTC, ZombineDev wrote:
> Also almost every dynamic language has some sort of eval
> function can be used to evaluate arbitrary code at run-time.
And almost every language guideline suggest to never use it. When
people have to use it, it usually ends in a library/language
extension making it obsolete...
> LOL, I have never heard about a user complaining that a product
> has too many features, as long as they don't get in the way.
Really? It is quite common to complain about standard libraries
being stuck with obsolete features. Which is quite confusing to
both beginners and intermediate programmers.
> data base queries, etc.) Such functionality has been a huge
> success for .NET. E.g. they enabled some advanced LINQ features
> which are used under the hood of almost every .NET project.
In Java and C#, the VM is the most stable language. In D/C++/C
the IR is completely implementation defined.
A VM does not belong in a standard library. It is going to suck.
If it doesn't suck today, then it will most certainly suck
tomorrow or the day after.
> packages. For example, that would allow linters to leverage the
> compiler lexer and parser instead of implementing their own,
> which often can't handle all language features.
The standard library is for abstracting system specific aspects
that libraries need to deal with. The most important aspect of a
standard library is for writing libraries with a strong focus on
consistency, not compilers or even applications. A standard
library should have very high quality and performance
requirements.
The D standard library is already too bloated to reach a high
quality level and probably also suffer in the performance
department.
Keep auxiliary stuff out, or D will never reach a competitive
level.
More information about the Digitalmars-d
mailing list