mukul-rathi / bolt

Bolt is a language with in-built data-race freedom!
MIT License
564 stars 51 forks source link

Type check subordinate exprs #105

Closed mukul-rathi closed 4 years ago

mukul-rathi commented 4 years ago

Only allow the construction of subordinate objects inside a class.

In async expressions, remove any regions that are subordinate or that share fields with subordinate state, or if the field type is subordinate.

Don't allow subordinate state to leak out of a method / be directly accessed

Can only pass in subordinate state / return subordinate state from x.meth() if x is completely encapsulated()