Skip to content

anoma/cl-rm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Common Lisp OO Resource Machine

This code demonstrates compiling CL objects to resources.

This code is not intended to be specs compliant, but strategies to make it specs compliant however are known

Known Limitations

This mode is great because of mapping CLOS Objects to Resources, however this model is also limited because we are tied using CL here as the meta model. This section covers in which ways we were limited or what proper methods we envisioned that couldn’t be practically done.

  1. Intent formats being automatically solvable. If we used Prolog as the meta-language here, we could have had Intent resources give constraint information when trying to finalize a transaction, due to this, the solving aspect and format is under cooked in the code
  2. Because our semantics don’t tie completely within CL, and deallocation is a completely different time for the resource model, we have to model this directly with the delete method that we carry around instead of making it apart of the life cycle
  3. We tie the model for ownership to creation and deletion in a way that leaks the resource model this should really exist on operations however due to how the RM is we have to do this at an improper abstraction level for what we’d like to actually write
    • More exploration is required to fully understand this issue better and how to move the constraints the user has to write.

About

The Common Lisp OO Resource Machine Demo

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published