DIP1000
Andrei Alexandrescu via Digitalmars-d
digitalmars-d at puremagic.com
Tue Aug 30 09:12:19 PDT 2016
I'd like to initiate collaboration on an effort to do DIP1000 rigorously.
First we need to reduce D to a bare subset that only has integers,
structs, pointers, and functions. That's a working subset of actual D
code. The grammar I have in mind is at http://erdani.com/d/DIP1000.html.
There is no type deduction, member functions, classes, arrays,
constructors, loops, etc. etc. etc. Only the ability to create
arbitrarily complex graphs containing integers and pointers to other nodes.
On this language we need to define typing rules and evaluation
semantics. Once we have those, we need to prove what we want: for scope
variables the accessibility never outlives lifetime. As a consequence
we're good to deallocate them early etc.
The model for typing, evaluation, and proofs is at
https://www.cis.upenn.edu/~bcpierce/papers/fj-toplas.pdf. It would be
great if those interested in helping could give the paper a close read.
Once we get this done we'll have a fantastic model for any other
language changes.
Andrei
More information about the Digitalmars-d
mailing list