Feature Requests

From VpriWiki

Jump to: navigation, search

Add your suggestions for improvements to the system to the list below. If the idea isn't obvious and needs more than a one-sentence explanation, or if you need to illustrate the idea with use cases, scenarios, etc., then please create a new page for your suggestion and make a short entry in the list below that links to it.

Feel free to insert items anywhere in the list, reflecting the importance of the suggestion with the most urgent item nearest the top.

  • Make type definition allocate space for fields (fixed ikp 2008-06-17 svn 426)
  • Better dlopen error reporting (see email from tak "[fonc] Compile idst with SELinux" on "Thu, Apr 3, 2008 at 12:27 AM")
  • C blocks are not possible within Pepsi blocks UPDATE: C blocks are (have always been?) possible in Pepsi blocks. The confusion (I think, it's been a while) was that accessing Pepsi variables from the outer scope of a block within a C block is not possible, but this limitation can be worked around. See the C_Block_Trick.


  • Pepsi debugging: interrupt, breakpoints, inspect global and local variables, single step, print object contents, stack frames, etc.
  • Jolt debugging: see Pepsi debugging.
  • Make libjolt compile again (see patches from M. FIG -- first "[fonc] Compilation problem: undefined reference to `GC_malloc'" on "Thu, Nov 22, 2007 at 6:40 PM" -- most recent "[fonc] [PATCH 01 of 10] Get libjolt working again" on "Tue, Mar 11, 2008 at 9:42 PM")
  • Minimal Documentation
  • static code generation (in progress)
  • Dynamic pepsi compiler (i.e., compile Pepsi to jolt instead of C) (in progress)
  • Jolt ARM code generation (current proof-of-concept has significant performance issues)
  • GC memory consumption needs to be capped
  • Non-local control (e.g., exceptions, setjmp)
  • Solve the "boot.k problem", where certain pieces (and not others) of boot.k must be copy and pasted to get jolt programs to run (see libjolt/Makefile for example)
  • Automatic storage (dirt-cheap and scoped memory allocation) in Jolt (e.g., alloca)
  • Generated code should be garbage collected
  • Memory debugging (for segfaults in Jolt)
  • Jolt performance profiling (only very basic support needed)
  • Floating point support in Jolt
  • Primitive types in Jolt (signed, unsigned, float, vector, etc.) (?)
  • "Understanding" C header files (structure size/layout, constants, types etc.) for accessing outside libraries (e.g. OS-level services, windowing/events, etc.) from Jolt
  • Namespaces (in Pepsi)
  • SIMD support in Jolt
  • Fix 32-bit word assumptions in Jolt
  • OS-level multi-threading
  • "selector-centric" dispatch (ala multimethods)
  • Green multi-threading
  • Jolt constant objects (quoted lists, etc.) should be immutable
Personal tools