Replies: 4 comments
-
Thanks for opening the discussion. Just as a reference, CL and the extraction of CL to a payoff language is defined in the following publications: |
Beta Was this translation helpful? Give feedback.
-
There are a lot of things I like about CL. Some would be relatively easy for us to integrate, some less so. Three clear candidates from my perspective are:
Typed Expression SublanguageMarlowe and CL both support boolean and numeric expressions. Marlowe represents these with two mutually recursive data types: The advantage of the expression sublanguage approach is that it allows polymorphic language constructs. In particular, Relative Time ModelThere are two differences in how Marlowe and CL represent time: relativity and unit. Marlowe uses milliseconds as the unit, whereas CL uses days. Marlowe's time values are absolute, or more precisely, they are all relative to a fixed point (the UNIX epoch). In contrast, CL's time values are relative to the contract's start date. Both offer advantages, but actual financial contracts almost always use relative times, not absolute ones. Additionally, relative times make contracts more reusable, as one can change the schedule of a contract without changing the contract definition (by changing the effective start date). Finally, relative times ensure sensible temporal ordering of sub-contracts, as one schedule date cannot occur before a previous one (assuming the language only allows schedule times to be advanced forward and not backward). Parallel compositionCL supports contract conjunction via its |
Beta Was this translation helpful? Give feedback.
-
Denotational semanticsCL defines denotational semantics, as well as reduction semantics, where Marlowe has just reduction semantics. Denotational semantics allows to simplify contracts to a normalized form (section 2.4: Contract Equivalences), i.e. by adding denotational semantics to Marlowe we could accomplish optimizations of Marlowe contracts |
Beta Was this translation helpful? Give feedback.
-
Payoff languageCL considers pricing a particular use-case for a contract language. In addition to CL they defined the CL payoff language, which is designed to be well suited for integration with Monte Carlo simulation techniques for pricing. |
Beta Was this translation helpful? Give feedback.
-
Yesterday @yveshauser gave a very interesting presentation on Contract Language (CL). I thought it would be a good idea to open a discussion about lessons we could learn or things we might want to consider adapting to Marlowe.
Beta Was this translation helpful? Give feedback.
All reactions