
Lets crowdsource language design in the comments [pdf] - ProtocolAuthor
https://cs.brown.edu/~sk/Publications/Papers/Published/tpk-crowdsource-lang-design/paper.pdf
======
ProtocolAuthor
I'll start. Inheritance should only be from an interface. None of these
virtual inheritance problems where spagetti code can happen by calling
functions that don't document what virtual functions the inner implementation
may use. That problem becomes a pain and composition over inheritance is
suitable for the times you need it
[https://en.wikipedia.org/wiki/Composition_over_inheritance](https://en.wikipedia.org/wiki/Composition_over_inheritance)

------
ProtocolAuthor
Can we agree if the language is statically checked we should have no
exceptions? I rather have the language have built in syntax or features to
give me an error when I don't want to handle it or pass it to the calling
function. I don't want function errors to disappear either like they do in C
(and rust doesn't force you to check the Result value)

------
ProtocolAuthor
I read this paper and when I got to the part where people expect true should
be false (14.3%) I knew I should stop reading and all the results will be
ridiculous.

However I thought it'd be fun to give it a show. What features should a brand
new language have?

