Re: cap patterns in 1ml
Matt Rice <[email protected]> Mon, 25 Jan 2016 13:17:00 -0800
| Newsgroups | gmane.comp.capabilities.general |
|---|---|
| Message-ID | <CACTLOFpLWgfa5nsgW8uRAgYDWEF1-9b00p9FnKE=Nt+95PsoJA@mail.gmail.com> |
On Mon, Jan 25, 2016 at 12:19 PM, Raoul Duke <[email protected]> wrote: > On Sun, Jan 24, 2016 at 1:48 PM, Matt Rice <[email protected]> wrote: >> On Tue, Jan 19, 2016 at 7:45 PM, Matt Rice <[email protected]> wrote: >>> I haven't quite gotten to factories yet, >> Well I am skeptical that types & pure constructors alone is going to >> be able to confine now primarily because I don't believe the effects >> of a monad within in a pure constructor are going to be confined to >> the pure constructor, without some form of environment restriction >> e.g. the usual ways > > > Is there a good example anywhere of how to get that level of security > in a language? Thanks. a good example I think is Jonathan Rees Security Kernel for the lambda calculus http://mumble.net/~jar/pubs/secureos/ I noticed he recently posted a repository for it on github here https://github.com/jar398/w7 I guess my question was can we get this without mucking about with first class environments? instead using the type system and I think it boils down to sort of, if you add the set of free/non-local variables as a part of a functions type, or (at least) allow the language to discriminate between combinators (which have no free/non-local variables) and other functions with free variables.