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
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
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
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
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
ac3ab5b47a
chore: start decoding docs and fix wording for encode docs
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
a238dc58a6
Move program builder to uplc crate
2022-06-29 14:02:57 -04:00