alessandrokonrad
6619a0e431
moved cost_mdls language determination into eval_redeemer
2022-09-18 09:37:14 +02:00
Kasey White
472cea6c41
parameratize cost model
2022-09-17 21:12:48 -04:00
alessandrokonrad
d426f4922f
added eval_tx_raw
2022-09-16 17:13:42 +02:00
Kasey White
02a8a34fe8
expose tx simulation with simulate cli command
2022-09-16 04:35:20 -04:00
Kasey White
3f27bd9f13
move utils to uplc and break up
2022-09-16 04:00:29 -04:00
rvcas
ddf3cdb6ec
chore: use alpha 3 instead of main
2022-09-15 11:29:08 -04:00
rvcas
26deb6df10
fix: it compiles again
2022-09-15 11:27:33 -04:00
rvcas
348ed3b719
fix: changes from pallas bump
...
Co-authored-by: Kasey White <kwhitemsg@gmail.com>
2022-09-14 22:00:52 -04:00
rvcas
336af376e1
chore: bump pallas version
2022-09-14 18:52:42 -04:00
alessandrokonrad
806d98e5fc
added error messages to execution purpose
2022-09-14 18:52:05 -04:00
alessandrokonrad
fc92c40c3c
fixed typo
2022-09-14 18:52:05 -04:00
alessandrokonrad
2bd46f90bb
error statemens after program
2022-09-14 18:52:05 -04:00
alessandrokonrad
829d959fa3
more error statements
2022-09-14 18:52:05 -04:00
alessandrokonrad
a408491e41
added error messages
2022-09-14 18:52:05 -04:00
alessandrokonrad
be8daa00dd
added plutusV1 test
2022-09-14 18:52:04 -04:00
alessandrokonrad
6e4ff1e282
added plutusV1
2022-09-14 18:52:04 -04:00
alessandrokonrad
d9b34973c7
fixed constructor tags
2022-09-14 18:52:04 -04:00
alessandrokonrad
61bf55e151
added example
2022-09-14 18:52:04 -04:00
alessandrokonrad
eb1466d269
fixed budget calc
2022-09-14 18:52:04 -04:00
alessandrokonrad
fa6520e585
added full evaluation; still fails because hashes mismatch regarding pallas
2022-09-14 18:52:04 -04:00
alessandrokonrad
76d326b9ac
completed execution part
2022-09-14 18:52:04 -04:00
alessandrokonrad
b1b9d3a5d4
preliminary work on execution
2022-09-14 18:52:04 -04:00
alessandrokonrad
080985b7c6
more bug fixes
2022-09-14 18:52:04 -04:00
alessandrokonrad
33c2a25fa3
bit more refactoring
2022-09-14 18:52:03 -04:00
alessandrokonrad
ec63bd2365
fixed bugs in conversion to plutus data; little refactoring
2022-09-14 18:52:03 -04:00
alessandrokonrad
f0d17897ab
fixed bug in tx_in_info
2022-09-14 18:52:03 -04:00
alessandrokonrad
ecd363e67d
fixed bugs; preliminary work on eval
2022-09-14 18:52:03 -04:00
alessandrokonrad
4060a25324
fixed bugs
2022-09-14 18:52:03 -04:00
alessandrokonrad
24397d4b58
fixed time range
2022-09-14 18:52:03 -04:00
alessandrokonrad
57816d4c09
added get script purpose
2022-09-14 18:52:03 -04:00
alessandrokonrad
8b894f7351
added functions to get script context
2022-09-14 18:52:03 -04:00
alessandrokonrad
c0c7bd58b3
added all necessary trait impl for PlutusV2 scriptContext
2022-09-14 18:52:02 -04:00
alessandrokonrad
4e51826981
added more implementations for ToPlutusData
2022-09-14 18:52:02 -04:00
alessandrokonrad
60d7c52c26
added some structs; added ToPlutusData
2022-09-14 18:52:01 -04:00
rvcas
bc983d694a
feat: some cbor hex flags for flat and unflat
2022-09-14 18:51:38 -04:00
rvcas
da73995124
fix: resolved inputs should be a flag
2022-09-14 18:51:38 -04:00
Harper
d8cdeaf925
ouput ( #51 )
2022-09-14 18:51:38 -04:00
rvcas
564cd41626
chore: clean up tx in info
2022-09-14 18:51:37 -04:00
Kasey White
d5f8b749ae
add txininfo plutus data to main
2022-09-14 18:51:36 -04:00
rvcas
cf27c0c755
feat: apply redeemers and datum to script
2022-09-14 18:51:08 -04:00
rvcas
c9072deb09
feat: print some info
2022-09-14 18:50:11 -04:00
rvcas
055ca5c66b
feat: add a new subcommand for tx simulation
2022-09-14 18:50:05 -04:00
rvcas
4615132b05
Release 0.0.12
...
aiken@0.0.12
uplc@0.0.12
Generated by cargo-workspaces
2022-09-08 18:22:46 -04:00
Lucas
6d6f671f4f
eval with inputs ( #56 )
2022-09-08 18:20:52 -04:00
Niels Mündler
739f38beac
UPLC data parsing support by CBOR notation ( #37 )
...
* Implement constant data parsing support
New notation: (con data #0000 )
Where #0000 is the CBOR hex representation of a PlutusDatum
* Add pretty printing support for data
* Format
2022-09-08 16:10:12 -04:00
rvcas
d54aaff5de
feat: fill in expr unit parser a bit
2022-09-07 17:53:07 -04:00
rvcas
59a9bac9b5
feat: finish expr_seq_parser
2022-09-07 17:52:49 -04:00
rvcas
3bc507c9e8
feat: beginnings of expr parsing
2022-09-07 17:52:49 -04:00
rvcas
d87bb17a27
feat: type aliases and some fn parsing
2022-09-07 17:52:49 -04:00
rvcas
fbc9b27efe
feat: parse custom types
2022-09-07 17:52:49 -04:00
rvcas
1d1a6fc404
feat: parse imports
2022-09-07 17:52:49 -04:00
rvcas
1d6809661c
feat: lexer
2022-09-07 17:52:49 -04:00
rvcas
208f2e80ea
feat: more ast elements and some sample syntax
2022-09-07 17:52:48 -04:00
rvcas
35143f1544
feat: add the ast module
2022-09-07 17:52:48 -04:00
rvcas
fd17605e4d
feat: add deps
2022-09-07 17:52:46 -04:00
rvcas
e74eace15c
chore: init lang crate
2022-09-07 17:52:18 -04:00
rvcas
db5695a1c4
Release 0.0.11
...
aiken@0.0.11
uplc@0.0.11
Generated by cargo-workspaces
2022-09-07 17:49:27 -04:00
rvcas
4d742b5b47
chore: fix formatting
2022-09-06 15:45:08 -04:00
Niels Mündler
9b491b3777
Print machine logs (debug trace)
...
This may be made optional with a --verbose flag, but usually the user wants to see all invocations of the Trace command
2022-09-06 15:44:23 -04:00
Kasey White
c88e5df8b1
finish up builtin implementations for Vasil
2022-08-30 18:15:50 -04:00
Kasey White
2d1f147d40
remove extra dependencies and return result for data encode/decode
2022-08-29 14:07:13 -04:00
Kasey White
65b133251a
change pretty vars and handle larger range of cbor tags
2022-08-29 14:07:13 -04:00
Kasey White
833914c80c
done with data builtins
2022-08-29 14:07:13 -04:00
Kasey White
368cd4ad55
one more data builtin to go
2022-08-29 14:07:13 -04:00
Kasey White
00cc9f93d5
start making data with builtins
2022-08-29 14:07:13 -04:00
Kasey White
1a09a34873
mknil builtins
2022-08-29 14:07:13 -04:00
Kasey White
c34344ce21
add a few additional data builtins
2022-08-29 14:07:13 -04:00
Kasey White
c9c8e6e554
add unmap and other builtins to deconstruct data
2022-08-29 14:07:13 -04:00
Kasey White
73e367ad53
add a data builtin and do ex_mem for pairs, list, data
2022-08-29 14:07:13 -04:00
rvcas
45e22c1ea8
Release 0.0.10
...
aiken@0.0.10
flat-rs@0.0.10
uplc@0.0.10
Generated by cargo-workspaces
2022-08-27 16:45:04 -04:00
zypeh
03847259f7
Removing whitespace
2022-08-27 10:59:48 -04:00
zypeh
b474abdb9b
Rewrite test in proptest, remove quickcheck dep
2022-08-27 10:59:48 -04:00
Kasey White
8eb2d24704
fix clippy check
2022-08-25 19:36:03 -04:00
zypeh
aeae9aa51e
zigzag zagzig
2022-08-25 19:36:03 -04:00
zypeh
b81986c44c
Adding more tests
2022-08-25 19:36:03 -04:00
zypeh
ef81427b62
Fixed bug if byte array exceed 255 bytes
2022-08-25 19:36:03 -04:00
zypeh
10461779af
Moved the test and use compiler specific function
2022-08-25 19:36:03 -04:00
zypeh
7cff93e718
Code linting
2022-08-25 19:36:03 -04:00
zypeh
40fd4ae447
Adding test cover the write_blk encode function
2022-08-25 19:36:03 -04:00
zypeh
9ded4d79d5
Move test to tests directory
2022-08-25 19:36:03 -04:00
zypeh
f997a6250c
Eliminate the recursive call
2022-08-25 19:36:03 -04:00
Kasey White
09ae98065c
remaining buitlins for list and integer
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-08-24 00:06:17 -04:00
Kasey White
3f6ad6be60
verify signature changed name and cost
2022-08-24 00:06:17 -04:00
Kasey White
c03d3e3604
fix budget restriction back to protocol params ( #39 )
2022-08-21 16:52:31 -04:00
rvcas
2b27261711
Release 0.0.9
...
aiken@0.0.9
uplc@0.0.9
Generated by cargo-workspaces
2022-08-17 22:48:06 -04:00
rvcas
8ed87c5f17
chore: fix clippy issues
2022-08-17 22:40:32 -04:00
Kasey White
2bb482d9ec
Using rc we now get code that runs much faster and
...
can run jpg contract with no inputs
2022-08-17 22:40:32 -04:00
Kasey White
fb81955f51
start changing machine to use rc instead of box (does compile)
2022-08-17 22:40:32 -04:00
Kasey White
c050a5647f
remove some unnecessary clones with more optimizations to come
2022-08-17 22:40:32 -04:00
rvcas
c3f0814c9b
Release 0.0.8
...
aiken@0.0.8
uplc@0.0.8
Generated by cargo-workspaces
2022-08-12 19:45:20 -04:00
Kasey White
f3ace55355
Implement more builtins for bytestring and integer
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-08-10 12:23:34 -04:00
Kasey White
11ee99c199
Add several builtins for strings and bytestring
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-08-07 22:21:58 -04:00
rvcas
4d04942a5e
Release 0.0.7
...
aiken@0.0.7
flat-rs@0.0.7
uplc@0.0.7
Generated by cargo-workspaces
2022-08-05 13:15:26 -04:00
rvcas
b83394be74
feat: decode proto list and proto pair
...
Co-authored-by: Kasey White <kwhitemsg@gmail.com>
2022-08-05 00:38:41 -04:00
rvcas
e8f783e7bb
feat: decode plutus data
2022-08-05 00:38:41 -04:00
rvcas
fa3c88a31e
feat: add from_cbor and from_hex
2022-08-05 00:38:41 -04:00
rvcas
e6be899b2a
feat: fill in encode constant todos
2022-08-05 00:38:41 -04:00
rvcas
61b70e7e3d
feat: encode plutus data
2022-08-05 00:38:41 -04:00
Kasey White
d14920265e
flat encoding for list and pairs
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-08-05 00:38:41 -04:00
rvcas
198dae7f5d
feat: impl display for Program and Term where T: Binder
2022-08-05 00:38:41 -04:00
rvcas
e70881c27c
feat: add some missing enum members to constant
2022-08-05 00:38:41 -04:00
rvcas
8e8f1270b5
feat: to_cbor and to_hex for Program
2022-08-03 17:17:15 -04:00
rvcas
339e638705
feat: impl eval for Program<DeBruijn>
2022-08-02 19:04:25 -04:00
rvcas
207f9e5ab0
Release 0.0.6
...
aiken@0.0.6
flat-rs@0.0.6
uplc@0.0.6
Generated by cargo-workspaces
2022-08-02 14:04:30 -04:00
Kasey White
a3a175d74b
switch to stack model for plutus eval
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-07-28 02:48:08 -04:00
Kasey White
4acbd704e0
fix compilation issue
2022-07-27 11:27:27 -04:00
Kasey White
234ab7c7cb
Try out recursion for environment and frames
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-07-27 11:27:27 -04:00
Kasey White
be38d1eebe
fix fmt error
2022-07-24 19:58:20 -04:00
Kasey White
2552a9c203
Finish docs for decoder
2022-07-24 19:58:20 -04:00
Kasey White
ac3ab5b47a
chore: start decoding docs and fix wording for encode docs
2022-07-24 19:58:20 -04:00
Kasey White
3aaec0936d
chore: create docs for encoding
2022-07-24 19:58:20 -04:00
Kasey White
b3cb9c4510
use expect instead of unwrap
2022-07-24 19:51:57 -04:00
rvcas
2a85567154
chore: clippy
2022-07-24 19:51:57 -04:00
rvcas
9e62181caa
feat: new Error not a constant
2022-07-24 19:51:57 -04:00
rvcas
77a7b11467
feat: finish to_ex_mem for constant
...
Co-authored-by: Kasey White <kwhitemsg@gmail.com>
2022-07-24 19:51:57 -04:00
rvcas
f332dfeb38
feat: 3 new error cases and more generic pretty printing
2022-07-24 19:51:57 -04:00
Kasey White
598c5364fe
implement force for builtins
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-07-24 19:51:57 -04:00
rvcas
22f90bf07f
feat: impl ifThenElse kinda
...
Co-authored-by: Kasey White <kwhitemsg@gmail.com>
2022-07-24 19:51:57 -04:00
rvcas
83b9294ac1
chore: print runtime
2022-07-24 19:51:57 -04:00
rvcas
b7e6f7b27f
feat: add default builtin costs
...
Co-authored-by: Kasey White <kwhitemsg@gmail.com>
2022-07-24 19:51:57 -04:00
Kasey White
9f977f7e58
add costing capability for builtins
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-07-24 19:51:57 -04:00
Kasey White
84df3be139
start filling in builtin cost model
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-07-24 19:51:57 -04:00
Kasey White
a5140513de
fix: debruijn index - 1
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-07-24 19:51:57 -04:00
rvcas
d55409d8c5
feat: basic builtin execution
...
Co-authored-by: Kasey White <kwhitemsg@gmail.com>
2022-07-24 19:51:57 -04:00
Kasey White
9ea57aa461
Add some runtime types
2022-07-24 19:51:57 -04:00
Kasey White
045dc8fed8
add builtin cost model
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-07-24 19:51:57 -04:00
rvcas
e8aa013aa4
chore: set to zero in spend loop
2022-07-24 19:51:57 -04:00
Kasey White
93f7849fc0
Finish machine evaluation for all terms except builtin
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-07-24 19:51:57 -04:00
Kasey White
0e2214a908
Implement apply evaluate
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-07-24 19:51:57 -04:00
rvcas
650a789194
chore: step and maybe spend
...
Co-authored-by: Kasey White <kwhitemsg@gmail.com>
2022-07-24 19:51:57 -04:00
Kasey White
0bf93e59b5
add evaluation for terms
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-07-24 19:51:57 -04:00
rvcas
795d9ee028
feat: clean up the machine a bit
2022-07-24 19:51:57 -04:00
Kasey White
de476c801b
Add costing to steps
2022-07-24 19:51:57 -04:00
Kasey White
7b8018447f
create initial enums and function of the UPLC cek interpreter
2022-07-24 19:51:57 -04:00
MitchTurner
0ea42ab7e7
Remove commented code related to closed story ( #23 )
...
Co-authored-by: Turner <mitch@tpfs.io>
2022-07-10 12:32:36 -07:00
MitchTurner
ada7b00b49
Expand builder ( #20 )
...
* Add bool method
* Add proptest
* Add some more consts and stuff
* Refactor Lambda stuff out
* REfactor
* Convert bytestring test to prop test
* Add string constant
* Add char stuff, despite it not being ready
* Add unit
* Add var
* Add delay
* Add apply
* Add force
* Add error
* Add builtin
* Add example, remove feature
* Rename some stuff
Co-authored-by: Turner <mitch@tpfs.io>
2022-07-01 20:50:58 -07:00
Turner
7f70ae0f74
Remove experimentation in features
2022-06-29 14:02:57 -04:00
Turner
a238dc58a6
Move program builder to uplc crate
2022-06-29 14:02:57 -04:00
Turner
f8aae49fce
Appease Clippy-sama
2022-06-29 14:02:57 -04:00
Turner
6748395d9e
Remove TODOs
2022-06-29 14:02:57 -04:00
Turner
35bdd542f1
Add test for nested lambdas
2022-06-29 14:02:57 -04:00
Turner
888e64d485
Refactor Lambda too
2022-06-29 14:02:57 -04:00
Turner
c7dfd01a5e
Refactor
2022-06-29 14:02:57 -04:00
Turner
41a7b73877
Add test for lambda and some edge cases for constant
2022-06-29 14:02:57 -04:00
Turner
e667fc3613
Add passing tests for builder
2022-06-29 14:02:57 -04:00
rvcas
4db39c8790
Release 0.0.5
...
aiken@0.0.5
uplc@0.0.5
Generated by cargo-workspaces
2022-06-27 11:46:21 -04:00
Kasey White
302da5e20d
Fix clippy warning
2022-06-26 21:38:27 -04:00
Kasey White
4eafdd2d39
fix issue with same names causing 0 index debruijn for var
2022-06-26 21:38:27 -04:00
Turner
027daf30ea
Add TODO for failing test with link to bug
2022-06-26 19:03:17 -04:00
Turner
19fd6a0e8c
Add comment explaining why that test is only one-way
2022-06-26 19:03:17 -04:00