Roscala.FFI- Draft

Goals:

Enhance Roscala.Transition to include a Foreign Function Interface.

This Milestone will be done when:

A jar file can be loaded, and its' classes interacted with.

  • Find a jar
  • Find a class within the jar
  • Construct an instance of the class
  • Invoke a method within the class.
  • Read fields on an object, both static fields on a class as well as fields on individual instances of a class
  • Conversion of Rosette selfless objects to Scala objects
  • Scala objects that need to be exposed to Rosette code.

In more detail:

  • A design & specification for the 'full' FFI for Roscala has been completed, which can be chunked into milestones.
  • The following source files from Rosette have been ported, or an equivalent has been created in the Scala project
    • ForeignFun.cc
    • SocketSupp.cc
    • InetSupp.cc

Excluded from this milestone:

  • Primitives relating to Compiler functions

Tickets in the Milestone:

Stakeholders

NameRoleReviewed
Lucius MeredithCEO- CoOp 
  •  
Nash FosterCEO- Pyrofex 
  •  


  •  


  •  


  •