Ignore:
Timestamp:
Oct 17, 2011, 4:50:44 PM (9 years ago)
Author:
mulligan
Message:

reconfiguring of tables, and recalculation of ratios

File:
1 edited

Legend:

Unmodified
Added
Removed
  • Deliverables/D4.2-4.3/reports/D4-3.tex

    r1391 r1394  
    149149In particular, we have merged many of the syntaxes of the intermediate languages (i.e. RTL, ERTL, LTL and LIN) into a single `joint' syntax, which is parameterised by various types.
    150150Equivalent intermediate languages to those present in the O'Caml code can be recovered by specialising this joint structure.
     151
     152As mentioned in the report for Deliverable D4.2, there are a number of advantages that this process of abstraction brings, from code reuse to allowing us to get a clearer view of the intermediate languages and their structure.
     153However, the semantics of the intermediate languages allow us to concretely demonstrate this improvement in clarity, by noting that the semantics of the LTL and the semantics of the LIN languages are identical.
     154In particular, the semantics of both LTL and LIN are implemented in exactly the same way.
     155The only difference between the two languages is how the next instruction to be interpreted is fetched.
     156In LTL, this involves looking up in a graph, whereas in LTL, this involves fetching from a list of instructions.
     157
     158As a result, we see that the semantics of LIN and LTL are both instances of a single, more general language that is parametric in how the next instruction is fetched.
     159Furthermore, any prospective proof that the semantics of LTL and LIN are identical is not almost trivial, saving a deal of work in Deliverable D4.4.
    151160
    152161%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%
     
    195204Most functions in the intermediate language semantics fall into the IO monad.
    196205\end{enumerate}
     206This monadic infrastructure is shared between the frontend and backend languages.
    197207
    198208%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%-%
Note: See TracChangeset for help on using the changeset viewer.