The Tunes HLL Subproject

As you may see, the HLL subproject is still in a draft process :( but it's also quickly evolving. Feel free to contribute !


Recent changes:

  • Our Plan added.


    Contents of the HLL Subproject

    Here are the current contents of this HLL project:

  • Firstly, the Goals of the subproject, and
  • A Plan about how we intend to implement the HLL.

  • Second, the Requirements for this HLL's semantics

  • Then, a definition of the HLL Semantics

  • The beginning of our standard minimal Syntax.

  • Examples that demonstrate the HLL's superiority.

  • A list of Sub-Subprojects below the HLL.

  • Currently no Implementation code, but soon !


    Subproject Goals

    The goals of this HLL Subproject are
  • to find a High-Level Language that will fulfill all the semantical requirements to be used as the standard language for Tunes;
  • if no such language exists yet, to design yet a new one for this purpose
  • After having found the language, to implement it inside the Tunes system.
  • Support that language and its implementations.
  • write tools and documentation to help that language develop.


    Plan

  • The HLL-, a restricted version of the HLL, will first be implemented as an s-exp interpreter written in Scheme. See directory src/HLL/scm in the Tunes distribution.
  • Then, a HLL- compiler will be written in HLL-, to produce binary output for the target platforms, linkable to what the LLL project produces.
  • Eventually, all of the LLL code will be integrated inside the HLL code as "inline assembly" and such, to ease manipulation, and compile from Tunes to Tunes.
  • This plan allows the HLL and LLL efforts to be led independently until they can help each other.


    To Do on this page

  • Find all HLL requirements.
  • Find all conceptual problems.
  • Identify possible candidates (languages) and state their virtues and shortcomings.
  • Make first proposals for such languages or a new one.
  • Divide into subfiles.
  • Define separately semantics & syntax
  • Find out how multiple type systems can be made compatible...
  • Find some nice semantics for annotations...
  • Separate annotation mechanisms from annotation resolving policies...
  • Add pointers to both original page and local copy
  • Wow, Paul Wilson's RScheme project does most of what Tunes wants !!!


    You may also want to

  • read what the Review subproject wrote about other languages that were intended for our HLL.
  • See the MISA project for a the computer language of next century (also a Java demo around here).
  • Descend to the meta-translator subproject
  • Descend to the HLL- subproject
  • go to the Tunes Subproject tree
  • or go back to the main Tunes page.


    Subproject coordinator:
    Faré -- rideau@clipper.ens.fr