"Stop Designing Languages. Write Libraries Instead."
Atila Neves
atila.neves at gmail.com
Mon May 6 12:34:07 UTC 2019
On Friday, 3 May 2019 at 17:34:59 UTC, JN wrote:
> On Friday, 3 May 2019 at 16:23:25 UTC, Atila Neves wrote:
>> On Friday, 3 May 2019 at 07:45:33 UTC, JN wrote:
>>> On Friday, 3 May 2019 at 02:25:47 UTC, Mike Franklin wrote:
>>>> [...]
>>>
>>> So does Lisp. And one of the main criticism of Lisp is that
>>> every programmer invents their own programming language
>>> features and it's very hard to reuse code or libraries
>>> because everything is written in different style.
>>>
>>> [...]
>>
>> I'm not sure the Lisp curse would exist if a package manager
>> had been part of the ecosystem from the beginning. Take D -
>> anyone _could_ write their own parser library but basically
>> everyone uses Pegged.
>
> Well, Lisp curse applies mostly to language features.
I'm aware of that. The point that I was trying to make is that D
has similar (but less powerful) features and there doesn't seem
to be a D curse. I'm also arguing that I think nobody would have
written about a Lisp curse either had it had a package manager
back then. Or Github for that matter because it would have been
easier to issue a pull request than write one's own library.
>Imagine
> if Pegged required you to pull in "pegged-oop",
> "pegged-traits", "pegged-exceptions"
But it doesn't, and if it did it'd be transparent to the user
anyway.
> and then you can't use throw because it doesn't support it,
> instead you have to do mixin(ExceptionHandler!((e) {
> writeln(e.toString()) })) to handle exceptions. That's what
> could occur if a language gives too much freedom and doesn't
> standarize on language features.
Common Lisp and Scheme have standards so I don't know what you
mean.
More information about the Digitalmars-d
mailing list