evincarofautumn / kitten

A statically typed concatenative systems programming language.
http://kittenlang.org/
Other
1.1k stars 42 forks source link

Consider inferred contextual paramaters as a generalization of permissions #223

Open lolbinarycat opened 1 month ago

lolbinarycat commented 1 month ago

https://paper.wf/binarycat/inferred-implicit-parameters-for-ergonomic-object-capabilities

two main requirements for this:

  1. allow inferring the whole function signature, including permissions
  2. allow permissions that are actual values

for example, instead of having a permission to perform IO on the entire system, you could have a directory handle represent the permission to access that directory.

I will try to put together a prototype, however i haven't touched haskell in quite some time, so i'm not sure how well i can manage.