The Tunes LLL Subproject

(Last modified Saturday January the 14th 1995 at 5:23am)


Low Level Language

The goal of this Subproject is a find a language that will fulfill all the requirement to be used as for Tunes, or design a new one if none is found.


LLL requirements

  • see in the Tunes Identity FAQ...
  • see the HLL page...
  • portability accross different architecture
  • local (real-time ?) and distributed higher-order GC
  • annotations (typing is done through them)


    LLL features

    Faré's general idea:
    entered around the object/annotation paradigm
    Low-level objects
    Annotations


    LLL Difficulties

  • Having some efficient hardware-independent stuff.
    Garbage Collecting
    • Infix pointers (that do not point at some globally constant offset to the beginning of an allocation unit) greatly complicate the GC. They should be forbidden whenever possible.
    • "C" like infix pointers can still be simulated with a segment-offset pair, with an aligned pointer and an offset inside the segment.
    • The GC may have to accept infix pointers as for code return addresses.
      I propose that code "segments" should not cross, say 4K or 8K boundaries, so that finding the right code segment is just a matter of checking the list of segments in the segment obtained by masking the right bits.


      LLL Difficulties

    • Having some efficient hardware-independent stuff.
    • Providing a GC


      To Do on this page

    • Find all LLL requirements.
    • Find all implementational problems.
    • Make first proposals.
    • Divide into subfiles.
    • Define separately semantics & representation
    • Find out how multiple architectures can be made interoperable...
    • Find some nice implementation for annotations...
    • Separate annotation mechanisms from annotation resolving policies...


      Back to the Tunes Home page.


      Page Maintainer:
      Faré -- rideau@clipper.ens.fr