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
Turner
1b00e4d416
Sanitize fibonacci program to make round-trip tests happy, isolate unsanitary code
2022-06-26 19:03:17 -04:00
Turner
787f345275
Add new uplc case to test, it is failing
2022-06-26 19:03:17 -04:00
Turner
5ba7349f4a
Refactor tests, move them into integ folder
2022-06-26 19:03:17 -04:00
rvcas
38e78cafeb
chore: readmes in uplc and cli
2022-06-18 23:15:05 -04:00
rvcas
0dd5cf2cb6
Release 0.0.4
...
aiken@0.0.4
Generated by cargo-workspaces
2022-06-18 23:06:15 -04:00
rvcas
7129ad6202
feat: remove authors from cli help
2022-06-18 23:06:05 -04:00
rvcas
5bd848b0b8
Release 0.0.3
...
aiken@0.0.3
uplc@0.0.3
Generated by cargo-workspaces
2022-06-18 22:55:04 -04:00
rvcas
6aae184848
feat: new fmt command and pretty printing works
2022-06-18 22:54:26 -04:00
rvcas
6a39d4349a
feat: everything lines up
2022-06-18 22:54:26 -04:00
Kasey White
d18ac475d1
modification to pretty printing for constants and nesting
2022-06-18 22:54:26 -04:00
rvcas
672c7037f6
fix: add new assert
2022-06-18 22:54:26 -04:00
rvcas
7e86a71772
feat: more pretty printing logic
2022-06-18 22:54:26 -04:00
rvcas
5a6ba40557
feat: start pretty printing
2022-06-18 22:54:26 -04:00
rvcas
cbea795f68
feat: only need to compare unique and index
2022-06-17 15:39:31 -04:00
rvcas
b8c5c268d4
feat: add conversion to tests
2022-06-16 16:54:34 -04:00
rvcas
59a8f6477b
feat: convet a named debruijn to a name
2022-06-15 20:12:12 -04:00
rvcas
7693da4bbf
Release 0.0.2
...
aiken@0.0.2
Generated by cargo-workspaces
2022-06-14 19:16:18 -04:00
rvcas
f8284ebaa0
chore: reset aiken version
2022-06-14 19:15:59 -04:00
rvcas
8d12332fa8
chore: version for uplc dep
2022-06-14 19:14:13 -04:00
rvcas
575585205b
Release 0.0.2
...
aiken@0.0.2
flat-rs@0.0.2
uplc@0.0.2
Generated by cargo-workspaces
2022-06-14 19:12:46 -04:00
rvcas
f7fba12a5f
chore: flat is taken in crates.io
2022-06-14 19:11:00 -04:00
rvcas
f511dce353
chore
2022-06-14 18:55:59 -04:00
rvcas
c210803adf
chore: add package description
2022-06-14 18:51:25 -04:00
rvcas
969cc80abf
chore: prepare to publish
2022-06-14 18:46:18 -04:00
rvcas
dc4246244d
chore: document somethings
2022-06-14 17:27:27 -04:00
rvcas
984c253f31
feat: rename to aiken and add e2e tests for uplc
2022-06-11 23:22:24 -04:00
Kasey White
1ef116fcda
fix: parse negative numbers and empty bytestrings
2022-06-10 17:23:36 -04:00
rvcas
2afded2d27
fix: builtin parsing
2022-06-10 11:48:46 -04:00
rvcas
b05f0846a8
fix: moving to a parser that can handle left recursion
2022-06-10 01:55:28 -04:00
rvcas
86089b4bee
fix: different attempt
2022-06-09 00:44:52 -04:00
rvcas
474df4a3ae
fix: different attempt
2022-06-08 23:22:34 -04:00
rvcas
74df7f8a7c
fix: potential fix for left recursion
2022-06-08 22:21:22 -04:00
rvcas
1c8f3a736b
feat: new uplc parser
2022-06-08 21:51:04 -04:00
Kasey White
33fcb77681
fix: put byte_array final pos incrementer in wrong scope
2022-06-08 15:42:58 -04:00
Kasey White
be477917f2
fix: fixed edge cases to get flat encode and decode working with stress test case
2022-06-08 03:33:09 -04:00
rvcas
21d713ece3
feat: change term parsing order
2022-06-07 22:02:20 -04:00
rvcas
b47030b86d
feat: better clap commands
2022-06-06 23:55:01 -04:00
Kasey White
895f279be0
fix: parser fixes for spacing
2022-06-06 23:28:36 -04:00
rvcas
60a920a0ac
fix: more subtle things
2022-06-06 22:51:09 -04:00
rvcas
4c45c95620
fix: var parsing
2022-06-06 22:40:15 -04:00
rvcas
d4251206e7
feat: fake named debruijn
2022-06-05 22:47:04 -04:00
rvcas
349364d867
chore: builtins implement Copy
2022-06-04 14:06:46 -04:00
rvcas
1ecd47a361
feat: clean up errors
2022-06-04 14:01:45 -04:00
rvcas
377c5c206c
feat: better errors for debruijn converter
2022-06-04 12:16:56 -04:00
rvcas
2f51b23e7e
feat: debruijn conversions and binder
...
Co-authored-by: Kasey White <kwhitemsg@gmail.com>
2022-06-04 11:15:34 -04:00
rvcas
2ad630de90
feat: use a stack for scope
2022-06-04 00:29:30 -04:00
rvcas
946937f945
feat: more debruijn stuff
2022-06-03 22:00:16 -04:00
rvcas
f8edb5d519
feat: start debruijn conversion
...
Co-authored-by: Kasey White <kwhitemsg@gmail.com>
2022-06-03 00:36:39 -04:00
rvcas
83d6b5243e
feat: get program ready for debruijn
2022-06-02 21:39:09 -04:00
rvcas
c7037ff8d9
feat: get string interning working
...
Co-authored-by: Kasey White <kwhitemsg@gmail.com>
2022-06-01 01:11:30 -04:00
Kasey White
581b8fc85d
feat: flat tweaks and string interning
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-05-31 22:57:55 -04:00
rvcas
31e7d63d9a
chore: use ref to get slice
2022-05-30 18:26:49 -04:00
rvcas
3f1ddef635
chore: slight clean up
2022-05-30 18:05:50 -04:00
Kasey White
83a784c745
add simple test for decoding
2022-05-30 17:12:32 -04:00
Kasey White
d4b659c04e
feat: finish up most of decoding (integer, decodeListWith, Term, Program, Version, Constant, Builtin)
2022-05-30 16:49:43 -04:00
rvcas
bf3b984405
fix: add back the decoder lifetime
2022-05-30 10:49:23 -04:00
Kasey White
4fb508e3b2
Add decoding for bytestring, string, char, bool, and filler
2022-05-30 02:32:39 -04:00
rvcas
9d8afee3d2
chore: impl todo for filler decode
2022-05-29 21:53:13 -04:00
rvcas
0a476d0592
feat: prepare decoding traits and make new Flat trait
2022-05-28 20:12:03 -04:00
Kasey White
41487733f7
feat: builtin encoding
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-05-28 00:23:34 -04:00
Kasey White
c01469ea51
feat: spec complaint program encoding
...
Co-authored-by: rvcas <x@rvcas.dev>
2022-05-27 22:37:08 -04:00
Kasey White
2e130ac5f0
add integer based on plutus core manual information
2022-05-24 04:55:10 -04:00
rvcas
b345afd12f
feat: we're flat encoding plutus core
2022-05-23 12:45:13 -04:00
Kasey White
344620136f
use encode_list_with with safe_encode_bits func
2022-05-23 12:20:04 -04:00
Kasey White
c38da6426f
implement encode_constant and add term tags for encoding
2022-05-23 02:22:37 -04:00
Kasey White
52f9f5ab41
feat: start on encoding constants with Flat Encoder
2022-05-22 20:29:59 -04:00
Kasey White
fdfaf91bcf
feat: create encoding for char, string, byte array
2022-05-22 18:16:42 -04:00
rvcas
52523516fe
feat: u8
2022-05-22 12:56:28 -04:00
rvcas
33fee5b3e0
chore: switch to a mono repo
2022-05-22 12:40:52 -04:00