Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

nixpkgs.follows = "haskellNix/nixpkgs-unstable";

isabelle-nixpkgs.url = "nixpkgs/nixos-22.05";
isabelle-nixpkgs.url = "nixpkgs/nixpkgs-unstable";

nixLsp.url = "github:oxalica/nil";

Expand Down Expand Up @@ -66,6 +66,7 @@
(with scripts; [
build-marlowe-proofs
edit-marlowe-proofs
vscode-marlowe-proofs
build-marlowe-docs
]
) ++
Expand Down
2 changes: 1 addition & 1 deletion isabelle/CodeExports/CodeExports.thy
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ code_printing
\<comment> \<open>into Haskell string. Because this is a textual rewrite, we need to force the\<close>
\<comment> \<open>generation of String.implode\<close>
| constant "BS :: string \<Rightarrow> ByteString"
\<rightharpoonup> (Haskell) "Stringa.implode"
\<rightharpoonup> (Haskell) "Str.implode"


text \<open>With a \<^bold>\<open>code\_identifier\<close> we hint what the name of the module should be.\<close>
Expand Down
530 changes: 265 additions & 265 deletions isabelle/generated/Examples/Escrow.hs

Large diffs are not rendered by default.

90 changes: 45 additions & 45 deletions isabelle/generated/Examples/Swap.hs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import Prelude ((==), (/=), (<), (<=), (>=), (>), (+), (-), (*), (/), (**),
String, Bool(True, False), Maybe(Nothing, Just));
import qualified Prelude;
import qualified Semantics;
import qualified Stringa;
import qualified Str;
import qualified SemanticsTypes;
import qualified Arith;

Expand Down Expand Up @@ -59,62 +59,62 @@ swap p1 p2 =
(makePayment p1 p2 (makePayment p2 p1 SemanticsTypes.Close)));

adaToken :: SemanticsTypes.Token;
adaToken = SemanticsTypes.Token (Stringa.implode []) (Stringa.implode []);
adaToken = SemanticsTypes.Token (Str.implode []) (Str.implode []);

adaProvider :: SemanticsTypes.Party;
adaProvider =
SemanticsTypes.Role
(Stringa.implode
[Stringa.Char True False False False False False True False,
Stringa.Char False False True False False True True False,
Stringa.Char True False False False False True True False,
Stringa.Char False False False False False True False False,
Stringa.Char False False False False True False True False,
Stringa.Char False True False False True True True False,
Stringa.Char True True True True False True True False,
Stringa.Char False True True False True True True False,
Stringa.Char True False False True False True True False,
Stringa.Char False False True False False True True False,
Stringa.Char True False True False False True True False,
Stringa.Char False True False False True True True False]);
(Str.implode
[Str.Char True False False False False False True False,
Str.Char False False True False False True True False,
Str.Char True False False False False True True False,
Str.Char False False False False False True False False,
Str.Char False False False False True False True False,
Str.Char False True False False True True True False,
Str.Char True True True True False True True False,
Str.Char False True True False True True True False,
Str.Char True False False True False True True False,
Str.Char False False True False False True True False,
Str.Char True False True False False True True False,
Str.Char False True False False True True True False]);

dollarToken :: SemanticsTypes.Token;
dollarToken =
SemanticsTypes.Token
(Stringa.implode
[Stringa.Char False False False True True True False False,
Stringa.Char True False True False True True False False,
Stringa.Char False True False False False True True False,
Stringa.Char False True False False False True True False,
Stringa.Char False True True False True True False False,
Stringa.Char True False True False True True False False])
(Stringa.implode
[Stringa.Char False False True False False True True False,
Stringa.Char True True True True False True True False,
Stringa.Char False False True True False True True False,
Stringa.Char False False True True False True True False,
Stringa.Char True False False False False True True False,
Stringa.Char False True False False True True True False]);
(Str.implode
[Str.Char False False False True True True False False,
Str.Char True False True False True True False False,
Str.Char False True False False False True True False,
Str.Char False True False False False True True False,
Str.Char False True True False True True False False,
Str.Char True False True False True True False False])
(Str.implode
[Str.Char False False True False False True True False,
Str.Char True True True True False True True False,
Str.Char False False True True False True True False,
Str.Char False False True True False True True False,
Str.Char True False False False False True True False,
Str.Char False True False False True True True False]);

dollarProvider :: SemanticsTypes.Party;
dollarProvider =
SemanticsTypes.Role
(Stringa.implode
[Stringa.Char False False True False False False True False,
Stringa.Char True True True True False True True False,
Stringa.Char False False True True False True True False,
Stringa.Char False False True True False True True False,
Stringa.Char True False False False False True True False,
Stringa.Char False True False False True True True False,
Stringa.Char False False False False False True False False,
Stringa.Char False False False False True False True False,
Stringa.Char False True False False True True True False,
Stringa.Char True True True True False True True False,
Stringa.Char False True True False True True True False,
Stringa.Char True False False True False True True False,
Stringa.Char False False True False False True True False,
Stringa.Char True False True False False True True False,
Stringa.Char False True False False True True True False]);
(Str.implode
[Str.Char False False True False False False True False,
Str.Char True True True True False True True False,
Str.Char False False True True False True True False,
Str.Char False False True True False True True False,
Str.Char True False False False False True True False,
Str.Char False True False False True True True False,
Str.Char False False False False False True False False,
Str.Char False False False False True False True False,
Str.Char False True False False True True True False,
Str.Char True True True True False True True False,
Str.Char False True True False True True True False,
Str.Char True False False True False True True False,
Str.Char False False True False False True True False,
Str.Char True False True False False True True False,
Str.Char False True False False True True True False]);

swapExample :: SemanticsTypes.Contract;
swapExample =
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{-# LANGUAGE EmptyDataDecls, RankNTypes, ScopedTypeVariables #-}

module Stringa(Char(..), implode) where {
module Str(Char(..), implode) where {

import Prelude ((==), (/=), (<), (<=), (>=), (>), (+), (-), (*), (/), (**),
(>>=), (>>), (=<<), (&&), (||), (^), (^^), (.), ($), ($!), (++), (!!), Eq,
Expand Down
2 changes: 1 addition & 1 deletion isabelle/marlowe.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ library
Product_Lexorder
Product_Type
SList
Stringa
Str
exposed-modules:
Arith
ArithNumInstance
Expand Down
4 changes: 4 additions & 0 deletions nix/scripts.nix
Original file line number Diff line number Diff line change
Expand Up @@ -37,4 +37,8 @@
cd isabelle
isabelle jedit -d . -u Doc/Specification/Specification.thy
'';
vscode-marlowe-proofs = writeShellScriptBinInRepoRoot "vscode-marlowe-proofs" ''
cd isabelle
isabelle vscode -o "editor_output_state=true" -d . -u Doc/Specification/Specification.thy .
'';
}