82ceb5b696 
								
							 
						 
						
							
							
								
								chore: Release  
							
							
							
						 
						
							2023-09-29 19:39:28 -04:00  
				
					
						
							
							
								 
						
							
								47596f0324 
								
							 
						 
						
							
							
								
								feat: Remove tuple_index and record_access in favor of faster more direct functions for  
							
							... 
							
							
							
							accessing an item in a tuple or a field in a record 
							
						 
						
							2023-09-28 01:05:05 -04:00  
				
					
						
							
							
								 
						
							
								1bcc9e8524 
								
							 
						 
						
							
							
								
								fix: expect on tuples from data now checks for no more items after the last  
							
							
							
						 
						
							2023-09-26 12:49:50 -04:00  
				
					
						
							
							
								 
						
							
								1ca3499128 
								
							 
						 
						
							
							
								
								chore: rename type  
							
							
							
						 
						
							2023-09-25 21:16:19 -04:00  
				
					
						
							
							
								 
						
							
								534eb62a07 
								
							 
						 
						
							
							
								
								fix: There was a stack overflow due to passing unbound types to a function  
							
							
							
						 
						
							2023-09-25 21:16:19 -04:00  
				
					
						
							
							
								 
						
							
								1cab479b81 
								
							 
						 
						
							
							
								
								fix: dependency hoisting for cyclic functions  
							
							... 
							
							
							
							Add more tests 
							
						 
						
							2023-09-25 21:16:19 -04:00  
				
					
						
							
							
								 
						
							
								2f80d07132 
								
							 
						 
						
							
							
								
								fix: minor stuff including fixing the var name used in modify_cyclic_calls  
							
							... 
							
							
							
							and carefully controling the functions we add to sorted dependencies 
							
						 
						
							2023-09-25 21:16:19 -04:00  
				
					
						
							
							
								 
						
							
								f4310bcf33 
								
							 
						 
						
							
							
								
								feat: finished up mutual recursion  
							
							... 
							
							
							
							Now we "handle" vars that call the cyclic function.
That includes vars in the cyclic function as well as in other functions
"handle" meaning we modify the var to be a call that takes in more arguments. 
							
						 
						
							2023-09-25 21:16:19 -04:00  
				
					
						
							
							
								 
						
							
								ae3053522e 
								
							 
						 
						
							
							
								
								feat: Update cyclic functions to be aware of being in a cycle.  
							
							... 
							
							
							
							Finish the creation of cyclic functions
The last part is to update vars that call into a function in the cycle 
							
						 
						
							2023-09-25 21:16:19 -04:00  
				
					
						
							
							
								 
						
							
								794fc93084 
								
							 
						 
						
							
							
								
								remove unused structs  
							
							
							
						 
						
							2023-09-25 21:16:19 -04:00  
				
					
						
							
							
								 
						
							
								0b38855ce4 
								
							 
						 
						
							
							
								
								add new enum for hoistablefunctions  
							
							
							
						 
						
							2023-09-25 21:16:19 -04:00  
				
					
						
							
							
								 
						
							
								ced818c455 
								
							 
						 
						
							
							
								
								checkpoint commit  
							
							
							
						 
						
							2023-09-25 21:16:19 -04:00  
				
					
						
							
							
								 
						
							
								0fb9837ddf 
								
							 
						 
						
							
							
								
								chore: change UserFunction to HoistableFunction to prepare for mututal recursion  
							
							
							
						 
						
							2023-09-25 21:16:19 -04:00  
				
					
						
							
							
								 
						
							
								74b8ab62b2 
								
							 
						 
						
							
							
								
								chore: add comments  
							
							
							
						 
						
							2023-09-25 21:16:19 -04:00  
				
					
						
							
							
								 
						
							
								a4aa51ed2d 
								
							 
						 
						
							
							
								
								WIP: first part of mutual recursion is done.  
							
							... 
							
							
							
							This involves creating the function definition and detecting cycles.
The remaining part is to "fix" the call sites
of the mutually recursive functions 
							
						 
						
							2023-09-25 21:16:19 -04:00  
				
					
						
							
							
								 
						
							
								ee4001d2c8 
								
							 
						 
						
							
							
								
								chore: Release  
							
							
							
						 
						
							2023-09-20 18:03:46 +02:00  
				
					
						
							
							
								 
						
							
								f379039efc 
								
							 
						 
						
							
							
								
								Fix record shorthand causing parsing ambiguity in if/else expressions.  
							
							... 
							
							
							
							Fixes  #735 . 
						
							2023-09-15 09:41:00 +02:00  
				
					
						
							
							
								 
						
							
								d808197507 
								
							 
						 
						
							
							
								
								chore: clippy fix  
							
							
							
						 
						
							2023-09-13 18:17:59 -04:00  
				
					
						
							
							
								 
						
							
								9a4f181a0f 
								
							 
						 
						
							
							
								
								chore: clippy fix  
							
							
							
						 
						
							2023-09-13 17:19:31 -04:00  
				
					
						
							
							
								 
						
							
								a45001376d 
								
							 
						 
						
							
							
								
								fix: is_record was used incorrectly in code gen,  
							
							... 
							
							
							
							the real solution was to look up the datatype and check constructors length 
							
						 
						
							2023-09-13 00:33:02 -04:00  
				
					
						
							
							
								 
						
							
								d042d55d42 
								
							 
						 
						
							
							
								
								fix clippy warnings in code gen  
							
							
							
						 
						
							2023-09-12 21:25:05 -04:00  
				
					
						
							
							
								 
						
							
								8ba5946c32 
								
							 
						 
						
							
							
								
								Preserve escape sequence after formatting  
							
							... 
							
							
							
							Bumped into this randomly. We do correctly parse escape sequence, but
  the format would simply but the unescaped string back on save. Now it
  properly re-escapes strings before flushing them back. I also removed
  the escape sequence for 'backspace' and 'new page' form feed as I
  don't see any use case for those in an Aiken program really... 
							
						 
						
							2023-09-08 12:12:15 +02:00  
				
					
						
							
							
								 
						
							
								6b70292dfb 
								
							 
						 
						
							
							
								
								chore: cargo fmt  
							
							
							
						 
						
							2023-09-06 21:10:50 -04:00  
				
					
						
							
							
								 
						
							
								dca09811c1 
								
							 
						 
						
							
							
								
								fix: empty records crashing code gen  closes   #728  
							
							
							
						 
						
							2023-08-31 17:39:38 -04:00  
				
					
						
							
							
								 
						
							
								51c44c6a30 
								
							 
						 
						
							
							
								
								fix: add an assert for better error messages when doing empty types  
							
							
							
						 
						
							2023-08-30 13:50:37 -04:00  
				
					
						
							
							
								 
						
							
								baa6917af5 
								
							 
						 
						
							
							
								
								Fix: Change type map length assert to check for greater than equals instead of equals to argument length  
							
							
							
						 
						
							2023-08-29 21:59:15 -04:00  
				
					
						
							
							
								 
						
							
								d4b9f22ac3 
								
							 
						 
						
							
							
								
								rm unnecessary mut  
							
							
							
						 
						
							2023-08-26 16:30:44 +00:00  
				
					
						
							
							
								 
						
							
								b075d85b40 
								
							 
						 
						
							
							
								
								chore: Release  
							
							
							
						 
						
							2023-08-24 15:05:12 -06:00  
				
					
						
							
							
								 
						
							
								a7062ccb88 
								
							 
						 
						
							
							
								
								chore: fix versions  
							
							
							
						 
						
							2023-08-24 15:04:19 -06:00  
				
					
						
							
							
								 
						
							
								747e057d05 
								
							 
						 
						
							
							
								
								fix: tags  
							
							
							
						 
						
							2023-08-24 15:00:09 -06:00  
				
					
						
							
							
								 
						
							
								2f0211a7b1 
								
							 
						 
						
							
							
								
								Bump all version manually because cargo workspaces didn't work.  
							
							
							
						 
						
							2023-08-22 13:27:10 +02:00  
				
					
						
							
							
								 
						
							
								89c55a23fa 
								
							 
						 
						
							
							
								
								chore: Release  
							
							
							
						 
						
							2023-08-19 20:17:00 -04:00  
				
					
						
							
							
								 
						
							
								084b900b2a 
								
							 
						 
						
							
							
								
								change: traverse_with_tree now has a boolean to determine when with is called  
							
							... 
							
							
							
							fix: Opaque types are now properly handled in code gen (i.e. code gen functions, in datums/redeemers, in from data casts)
chore: add specific nested opaque type tests to code gen 
							
						 
						
							2023-08-19 20:07:37 -04:00  
				
					
						
							
							
								 
						
							
								690e41261e 
								
							 
						 
						
							
							
								
								chore: Release  
							
							
							
						 
						
							2023-08-16 23:30:21 -04:00  
				
					
						
							
							
								 
						
							
								f5a49c4df4 
								
							 
						 
						
							
							
								
								fix: aliased import of single type throws compiler error  closes   #707  
							
							
							
						 
						
							2023-08-16 23:15:51 -04:00  
				
					
						
							
							
								 
						
							
								a45e04fd9b 
								
							 
						 
						
							
							
								
								fix: using the wrong var for pattern matching  
							
							
							
						 
						
							2023-08-16 21:59:25 -04:00  
				
					
						
							
							
								 
						
							
								2456801b17 
								
							 
						 
						
							
							
								
								fix list clauses with guards and add more tests  
							
							
							
						 
						
							2023-08-16 21:59:25 -04:00  
				
					
						
							
							
								 
						
							
								0ff64e3bac 
								
							 
						 
						
							
							
								
								test: check and format tests for logical op chain  
							
							
							
						 
						
							2023-08-15 09:58:35 -04:00  
				
					
						
							
							
								 
						
							
								e14d51600f 
								
							 
						 
						
							
							
								
								feat(format): logical op chain  
							
							
							
						 
						
							2023-08-15 09:58:35 -04:00  
				
					
						
							
							
								 
						
							
								2c2f3c90fb 
								
							 
						 
						
							
							
								
								feat: new snapshots  
							
							
							
						 
						
							2023-08-15 09:58:35 -04:00  
				
					
						
							
							
								 
						
							
								05eb281f40 
								
							 
						 
						
							
							
								
								chore: can safely remove this at this point  
							
							
							
						 
						
							2023-08-15 09:58:35 -04:00  
				
					
						
							
							
								 
						
							
								e4ef386c44 
								
							 
						 
						
							
							
								
								feat(tipo): inference for and/or chains  
							
							
							
						 
						
							2023-08-15 09:58:35 -04:00  
				
					
						
							
							
								 
						
							
								ab3a418b9c 
								
							 
						 
						
							
							
								
								feat(parser): add support for and/or chaining  
							
							
							
						 
						
							2023-08-15 09:58:35 -04:00  
				
					
						
							
							
								 
						
							
								2f7784f31e 
								
							 
						 
						
							
							
								
								chore: update changelog  
							
							... 
							
							
							
							expecting a type on List<Data> from data now only checks that type is a list and not each element 
							
						 
						
							2023-08-10 23:01:46 -04:00  
				
					
						
							
							
								 
						
							
								eda388fb29 
								
							 
						 
						
							
							
								
								test(aiken-lang): add a new test for list edge case in when clause patterns  
							
							
							
						 
						
							2023-08-08 20:47:35 -04:00  
				
					
						
							
							
								 
						
							
								252f68de17 
								
							 
						 
						
							
							
								
								fix clippy  
							
							
							
						 
						
							2023-08-07 19:08:18 -04:00  
				
					
						
							
							
								 
						
							
								f464eb3702 
								
							 
						 
						
							
							
								
								Cargo fmt + clippy, with latest rust  
							
							
							
						 
						
							2023-08-07 19:00:39 -04:00  
				
					
						
							
							
								 
						
							
								0d99afe5e2 
								
							 
						 
						
							
							
								
								Cargo fmt  
							
							
							
						 
						
							2023-08-07 19:00:39 -04:00  
				
					
						
							
							
								 
						
							
								90c7753201 
								
							 
						 
						
							
							
								
								update tests for new recursion optmization  
							
							
							
						 
						
							2023-08-07 19:00:39 -04:00  
				
					
						
							
							
								 
						
							
								65984ed15b 
								
							 
						 
						
							
							
								
								fix: move where we call the with in traverse_tree_with  
							
							
							
						 
						
							2023-08-07 19:00:39 -04:00  
				
					
						
							
							
								 
						
							
								dba0e11ba7 
								
							 
						 
						
							
							
								
								Add other shadowing cases  
							
							
							
						 
						
							2023-08-07 19:00:39 -04:00  
				
					
						
							
							
								 
						
							
								fc948f0029 
								
							 
						 
						
							
							
								
								Add the same optimization to dependent functions  
							
							... 
							
							
							
							I originally didn't add this because I thought this was mutually
recursive functions, which I couldn't picture how that would work;
I refactored all this logic into modify_self_calls, which maybe needs a
better name now.
Perf gain on some stdlib tests (line concat tests) is 93%!! 
							
						 
						
							2023-08-07 19:00:39 -04:00  
				
					
						
							
							
								 
						
							
								c45caaefc8 
								
							 
						 
						
							
							
								
								Rudimentary implementation  
							
							... 
							
							
							
							Adds an identify_recursive_static_params; doesn't handle all shadowing cases yet 
							
						 
						
							2023-08-07 19:00:39 -04:00  
				
					
						
							
							
								 
						
							
								09f889b121 
								
							 
						 
						
							
							
								
								Add codegen for recursive statics case  
							
							... 
							
							
							
							We also flip the recursive_statics fields to recursive_nonstatics; This makes the codegen a little easier.  It also has a hacky way to hard code in some recursive statics for testing 
							
						 
						
							2023-08-07 19:00:39 -04:00  
				
					
						
							
							
								 
						
							
								586a2d7972 
								
							 
						 
						
							
							
								
								Add recursive_static_params to AIR  
							
							... 
							
							
							
							Any methods to a recursive function that are unchanged and forwarded
don't need to be applied each time we recurse; instead, you can
define a containing lambda, reducing the number of applications
dramatically when recursing 
							
						 
						
							2023-08-07 19:00:39 -04:00  
				
					
						
							
							
								 
						
							
								1d9878c5ee 
								
							 
						 
						
							
							
								
								fix: code gen tests now up to date using trace  
							
							... 
							
							
							
							fix: Formatter should take ErrorTerm and return "fail"
fix: fail with no reason should just return ErrorTerm 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								29599879b2 
								
							 
						 
						
							
							
								
								one minor tail fix in clause pattern  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								6a1b2db698 
								
							 
						 
						
							
							
								
								use retain instead of position  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								7bf22fa58b 
								
							 
						 
						
							
							
								
								fix multivalidator issue  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								281a8363c0 
								
							 
						 
						
							
							
								
								fixes to tuples and usage of discard.  
							
							... 
							
							
							
							Also a fix to tail and its type in when list pattern matches 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								bfa4cc2efc 
								
							 
						 
						
							
							
								
								fix: some function dependency tree path was not being updated in order  
							
							... 
							
							
							
							fix: revert to old implicit way of casting to data for now 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								a45ff692a6 
								
							 
						 
						
							
							
								
								last changes for today  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								db79468435 
								
							 
						 
						
							
							
								
								remove old stuff  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								aca79bd728 
								
							 
						 
						
							
							
								
								remove warning  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								3189a60bdb 
								
							 
						 
						
							
							
								
								fixes to how we sort dependencies.  
							
							... 
							
							
							
							Also update dependency path based on a functions path. 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								80b950b8aa 
								
							 
						 
						
							
							
								
								fix edge case with assign and pattern matching  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								186e1235fd 
								
							 
						 
						
							
							
								
								checkpoint  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								1ee7492f1f 
								
							 
						 
						
							
							
								
								fix tuple clause  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								5aecb96668 
								
							 
						 
						
							
							
								
								constants are back. I had broke them when switching how data casting works  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								0b8266dfd1 
								
							 
						 
						
							
							
								
								some type conversion fixes  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								02948616cd 
								
							 
						 
						
							
							
								
								some more fixes involving clauses  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								a689b8748f 
								
							 
						 
						
							
							
								
								fix: working on minor edge cases  
							
							... 
							
							
							
							fix: zero arg function dependencies should not count as hoisted
fix: tuple index was receiving the wrong type 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								4e3ced5b75 
								
							 
						 
						
							
							
								
								fix and clean up tests and handle  
							
							... 
							
							
							
							one edge case on rearrange clauses 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								018453f6b1 
								
							 
						 
						
							
							
								
								fix expect on tuple type using the wrong internal type  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								f03ed41e03 
								
							 
						 
						
							
							
								
								fix some unnecessary lambdas in assign  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								03dd13dc7d 
								
							 
						 
						
							
							
								
								fixing list condition edge cases and clean up rearrange list clauses  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								e8fa8f5423 
								
							 
						 
						
							
							
								
								fixing list clause issues  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								c6f90a999b 
								
							 
						 
						
							
							
								
								checkpoint  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								389699f485 
								
							 
						 
						
							
							
								
								fix to subject type for assignment on single clause  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								dcb3a9b45b 
								
							 
						 
						
							
							
								
								some type and expect fixes  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								3545bad3c4 
								
							 
						 
						
							
							
								
								fix typing to constr  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								52ebc9b6c1 
								
							 
						 
						
							
							
								
								some more fixes  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								58b327e5b3 
								
							 
						 
						
							
							
								
								fixing bugs and edge cases  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								2f4319f162 
								
							 
						 
						
							
							
								
								fix: tuples and list patterns had a few issues  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								960a15c4ec 
								
							 
						 
						
							
							
								
								checkpoint - fixing tests and stuff  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								72b6f0f847 
								
							 
						 
						
							
							
								
								all but six tests passing  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								6eeb282dee 
								
							 
						 
						
							
							
								
								Now code gen is finished and we just have testing  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								518bea5be4 
								
							 
						 
						
							
							
								
								feat: fixed up generate and generate test  
							
							... 
							
							
							
							last step is checking on uplc code gen 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								18ea44adb0 
								
							 
						 
						
							
							
								
								chore: rename unwrapData and wrapData  
							
							... 
							
							
							
							add validator cast function for extra validator params 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								55dd1a1a56 
								
							 
						 
						
							
							
								
								out with the old code and in with the air tree  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								02ce3761ae 
								
							 
						 
						
							
							
								
								final checkpoint  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								8641c305f4 
								
							 
						 
						
							
							
								
								feat: airtree now hoists function. Now all that is left is finishing uplc gen  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								5ad8b520fd 
								
							 
						 
						
							
							
								
								checkpoint  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								5a51764cff 
								
							 
						 
						
							
							
								
								remove some warnings  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								a099c01734 
								
							 
						 
						
							
							
								
								feat: add support for hoisting code gen functions  
							
							... 
							
							
							
							fix: code gen vars should be module functions
fix: missed a recursive call in do_find_air_tree_node under binop 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								c0f09856d3 
								
							 
						 
						
							
							
								
								feat: Here's a first, we hoisted some user functions onto the validator  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								62660e04b5 
								
							 
						 
						
							
							
								
								checkpoint;  
							
							... 
							
							
							
							Remaining work is on function hoisting. Functions have been defined and monomorphized 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								ae9de11e77 
								
							 
						 
						
							
							
								
								big checkpoint:  
							
							... 
							
							
							
							feat: add monomorphize and other useful tree function abstractions
feat: started testing function hositing result so far 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								947c118175 
								
							 
						 
						
							
							
								
								checkpoint  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								9704cafefe 
								
							 
						 
						
							
							
								
								a checkpoint for function hoisting start and type fix  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00