Commit Graph

485 Commits

Author SHA1 Message Date
Pranav Gaddamadugu
46e9313e55 Introduce Type::Signature to the AST 2023-08-30 14:05:46 -04:00
d0cd
e180118a30
Merge pull request #2545 from AleoHQ/feat/underscore
Add support for underscores in numeric literals #2538
2023-08-28 08:17:22 -04:00
evan-schott
47e881f55e removed inaccurate invalid-literal error 2023-08-25 14:11:22 -07:00
evan-schott
035f763d40 clippy changes 2023-08-25 10:07:42 -07:00
evan-schott
550f43b039 Revisions (underscore to execute test, type checker error msg, spurious type error fix, revised tuple indexing test) 2023-08-25 09:49:53 -07:00
evan-schott
90bb897130 more clippy 2023-08-24 15:58:54 -07:00
evan-schott
f4fee23758 clippy fix 2023-08-24 15:40:00 -07:00
evan-schott
4308d598e2 running all tests and updating expectation files 2023-08-24 15:29:23 -07:00
evan-schott
439d2b29de loop unrolling compatible with underscores 2023-08-24 15:07:00 -07:00
collin
439312275a fix more warnings 2023-08-18 16:47:08 -07:00
collin
cf9fbb319d fix noop method call warnings 2023-08-18 16:16:55 -07:00
Pranav Gaddamadugu
7d4a5d3b33 Clippy 2023-08-17 17:52:51 -04:00
Pranav Gaddamadugu
440cced9d8 Cleanup 2023-08-17 17:49:29 -04:00
Pranav Gaddamadugu
661a7cd508 Update compiler pipelines 2023-08-17 17:22:57 -04:00
Pranav Gaddamadugu
2fe6892645 Use NodeBuilder in FunctionInliner 2023-08-17 17:22:57 -04:00
Pranav Gaddamadugu
19ba799d21 Use NodeBuilder in LoopUnroller 2023-08-17 17:22:57 -04:00
Pranav Gaddamadugu
8f63fcdf80 Add NodeBuilder to StaticSingleAssigner 2023-08-17 17:22:56 -04:00
Pranav Gaddamadugu
05d38f3777 Use NodeBuilder in Flattener 2023-08-17 17:22:56 -04:00
Pranav Gaddamadugu
bf25bbae8b Use interior mutability pattern for Assigner 2023-08-17 17:22:56 -04:00
Pranav Gaddamadugu
637e091abb Use NodeBuilder in DCE 2023-08-17 17:22:56 -04:00
d0cd
7cd6e757bf
Merge pull request #2522 from AleoHQ/design/node-id
[Design] Add `id` to AST nodes.
2023-08-17 00:26:52 -04:00
d0cd
85d9a28ebb
[Test] Add examples to test framework. (#2527)
* Add tests

* Remove debug print

* Regen expectations

* Remove battleship example
2023-08-15 11:11:17 -07:00
Pranav Gaddamadugu
7cc3330d98 Add failing test 2023-08-09 20:12:02 -04:00
Pranav Gaddamadugu
6808d90545 Only use NodeID::default() 2023-08-09 17:22:33 -04:00
Pranav Gaddamadugu
3b1bd38ec6 Update passes 2023-08-09 16:58:28 -04:00
Pranav Gaddamadugu
90add44907 WIP update passes 2023-08-09 15:34:39 -04:00
Collin Chin
d44457fc32
[Feature] Implement leo execute (#2491)
* bump snarkvm rev

* update default gitignore

* impl leo execute

* bump snarkvm 0.14.5

* modify examples wip

* update run.sh examples

* impl env file

* clippy warning

* fix auction example

* fix auction example env

* generate new private key for new env - tests failing due to env not found err

* commit error changes

* Fix tests; clippy

* Get examples working

* leo build checks that build dir is well formed; clippy

* Clean up

* Update examples/README.md

Co-authored-by: d0cd <pranavsaig@gmail.com>
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>

* do not commit .avm files

* use snarkvm commands

---------

Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
Co-authored-by: Pranav Gaddamadugu <pranav@aleo.org>
Co-authored-by: d0cd <pranavsaig@gmail.com>
2023-07-19 18:04:09 -07:00
d0cd
d92d48e4a5
[Fix] Fix issues related to flattening. (#2439)
* Implement fix

* Regen expectations

* Update AST printing for functions

* Fix code generation when there are no output operands

* Fix flattener

* Add additional tests

* Regen expectations

* Fmt

* Regen expectations
2023-07-05 15:45:15 -07:00
Collin Chin
b690a62676
impl Mapping::contains, Mapping::remove (#2436)
* impl Mapping::contains, Mapping::remove

* regen expectations

* Update compiler/passes/src/type_checking/checker.rs

Co-authored-by: Alessandro Coglio <coglio@kestrel.edu>
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>

---------

Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
Co-authored-by: Alessandro Coglio <coglio@kestrel.edu>
2023-06-29 17:04:55 -07:00
d0cd
b236918df4
[Feature] Support ChaCha::rand_* (#2433)
* Add tests for ChaCha::rand*

* Add Chacha::rand* to AST, tyc, and codegen

* Add lottery example

* Regen expectations

* Add check asserting that command is only used in finalize block

* Update example and related CI
2023-06-28 21:02:50 -07:00
Pranav Gaddamadugu
1fbb228092 Add comment 2023-06-28 10:09:33 -04:00
Pranav Gaddamadugu
8062693f3d Support method calls for group coordinates 2023-06-23 21:03:11 -04:00
Pranav Gaddamadugu
8b4552efd5 Fix implementation 2023-06-23 20:35:42 -04:00
Pranav Gaddamadugu
9b7a4ba456 WIP associated function syntax for group::to_*_coordinate 2023-06-23 20:22:03 -04:00
d0cd
07d26ea43f
[Feature] Casting via the as operator. (#2426)
* Revert "Revert WIP"

This reverts commit 5cce8b4a0e.

* Update tyc

* Add parse, compile, and execute tests

* Regen expectations
2023-06-23 17:09:15 -07:00
Pranav Gaddamadugu
5cce8b4a0e Revert WIP 2023-06-23 10:24:10 -04:00
Pranav Gaddamadugu
ccb4c0f38f Implement type checking for cast expressions 2023-06-23 10:10:10 -04:00
Pranav Gaddamadugu
c80f9c317c Handle cast expressions in SSA and CodeGen passes 2023-06-23 09:36:40 -04:00
Collin Chin
4a0ee1d9d8
[Feature] implement block.height command (#2420)
* implement initial block.height

* commit.height parsing and code generation

* patch self.caller tests

* add error for self.caller in a finalize context

* fix test
2023-06-20 16:36:11 -07:00
Collin Chin
e5ae160d1a
Implement new hash and commit functions (#2415)
* refactor hash -> hash_to_field

* refactor commit -> commit_to_field

* implement commit_to_address

* implement hash_to_address

* update hash and commit examples

* implement hash_to_scalar

* update tests

* implement bhp hash to integer variants

* implement bhp pedersen and poseidon integer variants

* Update compiler/passes/src/type_checking/checker.rs

Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>

* Update compiler/passes/src/type_checking/checker.rs

Co-authored-by: Alessandro Coglio <coglio@kestrel.edu>
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>

* fix pedersen hash type checks

---------

Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
Co-authored-by: Alessandro Coglio <coglio@kestrel.edu>
2023-06-15 19:55:03 -07:00
Collin Chin
d83c4be330
Implement Mapping::get_or_use (#2413)
* get_or_init -> get_or_use

* use mapping get_or_use in examples

* fix codegen for Mapping::get_or_use

* fix tests for Mapping::get_or_use

* fix warnings, update snarvm rev

* bump circle rust img v1.70

* fix codegen

* update snarkvm rev and regen tests

* Update compiler/parser/src/parser/expression.rs

Co-authored-by: d0cd <pranavsaig@gmail.com>
Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>

* Delete program.json

Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>

* Delete program.json

Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>

---------

Signed-off-by: Collin Chin <16715212+collinc97@users.noreply.github.com>
Co-authored-by: d0cd <pranavsaig@gmail.com>
2023-06-13 12:09:33 -07:00
Collin Chin
4e71f60cb4
Implement additional features to the "group" element type (#2394)
* add new hash and commit symbols

* pedersen commitment methods return fields

* use snarkvm rev a451d91, impl commit_to_group.bhp256

* implement bhp commit to group variants

* implement bhp hash_to_group variants

* implement pedersen commit_to_group and hash_to_scalar variants

* implement poseidon hash_to_group and hash_to_scalar variants

* remove hash_many symbol

* fix tests

* regen test expectations
2023-06-07 13:09:08 -07:00
Collin Chin
42d97d3d89
implement group::GEN Leo syntax (#2401)
* implement group::GEN Leo syntax

* revert unrelated test changes

* move new errors to bottom of file to keep previous error codes consistent
2023-05-31 16:05:56 -07:00
d0cd
d0c29ce8e0
[Update] snarkvm 0.11.0 (#2377)
* Remove gates from tests

* Remove Finalize test namespace

* Remove gates from examples

* Remove gates from compiler

* Regen expectations

* Add test that gates is allowed as a standard field of a record

* Update Rust version in CI

* Add check for MAX_MAPPINGS
2023-05-10 21:32:37 -07:00
Pranav Gaddamadugu
4b64fbe03a Fix error message 2023-04-18 17:22:59 -07:00
Pranav Gaddamadugu
98574495ff Update check 2023-04-18 17:14:01 -07:00
Pranav Gaddamadugu
6a660c4ceb Remove gates check 2023-04-18 17:14:01 -07:00
Pranav Gaddamadugu
581a671e31 Update maximum number of transitions 2023-04-18 17:14:01 -07:00
Pranav Gaddamadugu
a613f35c07 Check that finalize block does not return a value 2023-04-18 17:09:22 -07:00
Pranav Gaddamadugu
0b99135962 Update Mapping::get_or to Mapping::get_or_init 2023-04-18 17:09:22 -07:00