Since there's another SOS conference coming
i've decided to formally write up this really neat idea for reduction
<>that i
discovered. To support the paper (i.e. provide an executable version of the
mathematical model), i'm building out a lift project, cut from the same
cloth as the rlambda project i did. Instead of a two-level type version of
lambda, it's a two-level type version of Milner's π-calculus. This enables
one to do the very same trick that Martin challenged us to with lambda, but
this time with π-calculus.

My plan is to flesh this one out with all the features i've been mumbling

   - concrete syntax and multi-target parser
   - two-level type-based abstract syntax
   - polymorphic reduction strategy support multiple different variable and
   environment representations
      - The final form of the reduction strategy will also include a version
      of Oleg's LogicT
      - persistent code model (XSD schema + BDBXML XQuery db)
   - query langage for the code model

This seems like a reasonably rich example on which to base a lift archetype,
that i would like to dub lift-DSL. As i mentioned before, the primary input
to the archetype is a brief specification of a DSL. The output is a
web-based REPL++. i believe such an archetype encapsulates the salient
features of Microsoft's Oslo and extends them, but built out of parts you
can just find lying around on the web. (Oops! Commoditized again! ;-)

You can find the current project here <>.
The name comes from banging the two memes

para - Greek origin meaning "beside", "near", "past", "beyond", or
> "contrary"
> A literary *trope* is a common pattern, 
> theme<>,
> motif <> in literature,
> or a figure of speech <> in
> which words are used in a sense different from their literal 
> meaning.[*citation
> needed <>*] The term
> *trope* derives from Greek <> *
> τροπή <>*"turn, 
> turning"
> [1] <>,
> from 
> *τρόπος<>
> * - *tropos* "turn, direction, 
> way"[2]<>related
>  to the root of
> *τρέπω <>* - *
> trepō*, "to turn, to direct, to alter, to 
> change"[3]<>
> .

around in a mind whose formative years were spent dangerously overexposed to
Robert Heinlein.

To do this i need the following bits and bobs

   - Help writing a mvn plugin for BNFC
      - i started writing one, but got depressed about the complexity and
      never returned to the task
      - if anyone has a working mvn plugin written entirely in Scala, i
      could probably write mine from that -- i've just gotten to the
point where
      if i want to get things done on the scale i'm trying to work i
really need
      to limit the amount of Java i have to write
      - A dtd -> xsd converter (and an xsd -> SQL schema converter would be
   really, really nice)
   - A nice-to-have would be a LINQ-like interface on top of the BDBXML/Java
   interface, but i can make do without it

i could also really use a code reviewer or two.

Best wishes,


L.G. Meredith
Managing Partner
Biosimilarity LLC
1219 NW 83rd St
Seattle, WA 98117

+1 206.650.3740

You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to
To unsubscribe from this group, send email to
For more options, visit this group at

Reply via email to