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  
				
					
						
							
							
								 
						
							
								5b018b7c07 
								
							 
						 
						
							
							
								
								test: add a test around a tuple of constructors when with many conditions  
							
							
							
						 
						
							2023-09-20 16:20:42 -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  
				
					
						
							
							
								 
						
							
								1dea348a2e 
								
							 
						 
						
							
							
								
								chore: rust rover error  
							
							
							
						 
						
							2023-09-13 21:29:05 -04:00  
				
					
						
							
							
								 
						
							
								7b915b7dcf 
								
							 
						 
						
							
							
								
								chore: allow clippy::arc_with_non_send_sync in tests  
							
							
							
						 
						
							2023-09-13 19:07:45 -04: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  
				
					
						
							
							
								 
						
							
								c711a97e69 
								
							 
						 
						
							
							
								
								Throttle calls to package registry for version resolution  
							
							... 
							
							
							
							The 'HEAD' call that is done to resolve package revisions from
  unpinned versions is already quite cheap, but it would still be better
  to avoid overloading Github with such calls; especially for users of a
  language-server that would compile on-the-fly very often. Upstream
  packages don't change often so there's no need to constantly check the
  etag.
  So we now keep a local version of etags that we fetched, as well as a
  timestamp from the last time we fetched them so that we only re-fetch
  them if more than an hour has elapsed. This should be fairly resilient
  while still massively improving the UX for people showing up after a
  day and trying to use latest 'main' features.
  This means that we now effectively have two caching levels:
  - In the manifest, we store previously fetched etags.
  - In the filesystem, we have a cache of already downloaded zip archives.
  The first cache is basically invalidated every hour, while the second
  cache is only invalidated when a etag changes. For pinned versions,
  nothing is invalidated as they are considered immutable. 
							
						 
						
							2023-09-13 17:17:32 -04:00  
				
					
						
							
							
								 
						
							
								15efeb3069 
								
							 
						 
						
							
							
								
								Remove unused code & data-type 'UseManifest'  
							
							... 
							
							
							
							If it's unused, it shall be gone. It obfuscate what functions are
  doing and require managing extra complexity for no reason. 
							
						 
						
							2023-09-13 17:17:32 -04:00  
				
					
						
							
							
								 
						
							
								5381762e50 
								
							 
						 
						
							
							
								
								Rework logs around dependency fetching.  
							
							
							
						 
						
							2023-09-13 17:17:32 -04:00  
				
					
						
							
							
								 
						
							
								76ff09ba0e 
								
							 
						 
						
							
							
								
								Ensure that version resolution works offline  
							
							... 
							
							
							
							And so, even for unpinned package. In this case, we can't do a HEAD request. So we fallback by looking at what's available in the cache and using the most recently downloaded version from the cache. This is only a best effort as the most recently downloaded one may not be the actual latest. But common, this is a case where (a) someone didn't pin any version, (b) is trying to build on in an offline setup. We could possibly make that edge-case better but, let's see if anyone ever complains about it first. 
							
						 
						
							2023-09-13 17:17:32 -04:00  
				
					
						
							
							
								 
						
							
								87087a1811 
								
							 
						 
						
							
							
								
								Always check package status when version is not pinned  
							
							... 
							
							
							
							When the version isn't a git sha or a tag, we always check that we got
  the last version of a particular dependency before building. This is
  to avoid those awkward moments where someone try to use something from
  the stdlib that is brand new, and despite using 'main' they get a
  strange build failure regarding how it's not available.
  An important note is that we don't actually re-download the package
  when the case occurs; we merely check an HTTP ETag from a (cheap) 'HEAD'
  request on the package registry. If the tag hasn't changed then that
  means the local version is correct.
  The behavior is completely bypassed if the version is specified using
  a git sha or a tag, as here, we can assume that fetching it once it
  enough (and that it can change). If a package maintainer force-pushed
  a tag however, there may be discrepency and the only way around that
  is to `rm -r ./build`. 
							
						 
						
							2023-09-13 17:17:32 -04:00  
				
					
						
							
							
								 
						
							
								3c3a7f2423 
								
							 
						 
						
							
							
								
								Define 'is_git_sha_or_version' to assert whether a version is 'immutable'  
							
							... 
							
							
							
							Best-effort to assert whether a version refers is a git sha digest or a tag. When it is, we
avoid re-downloading it if it's already fetched. But when it isn't, and thus refer to a branch,
we always re-download it. Note however that the download might be short-circuited by the
system-wide package cache, so a download doesn't actually mean a network request.
The package cache is however smart-enough to assert whether a package in the cache must be
re-downloaded (using HTTP ETag). So this is mostly about delegating the re-downloading logic to
the global packages cache. 
							
						 
						
							2023-09-13 17:17:32 -04:00  
				
					
						
							
							
								 
						
							
								65fb3a640a 
								
							 
						 
						
							
							
								
								Remove dead-code.  
							
							
							
						 
						
							2023-09-13 17:17:32 -04:00  
				
					
						
							
							
								 
						
							
								a72628a4dc 
								
							 
						 
						
							
							
								
								Auto-derive 'Debug' trait instance for types in deps  
							
							... 
							
							
							
							Actually useful to debug / troubleshoot things. 
							
						 
						
							2023-09-13 17:17:32 -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  
				
					
						
							
							
								 
						
							
								9782c094b7 
								
							 
						 
						
							
							
								
								Fix clippy suggestions.  
							
							
							
						 
						
							2023-09-08 16:21:07 +02: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  
				
					
						
							
							
								 
						
							
								1de7b2866a 
								
							 
						 
						
							
							
								
								feat(cli): add --deny to build, check, and docs  
							
							... 
							
							
							
							This is useful for CI, where people that may have
a stricter workflow want to force CI to fail if any warnings
are detected. 
							
						 
						
							2023-09-06 17:19:44 -04:00  
				
					
						
							
							
								 
						
							
								819a0a20e6 
								
							 
						 
						
							
							
								
								add tests for case and constr  
							
							... 
							
							
							
							Fix a minor issue with decoding order 
							
						 
						
							2023-09-03 11:52:49 -04:00  
				
					
						
							
							
								 
						
							
								c9b01ab365 
								
							 
						 
						
							
							
								
								chore: fill in cost model  
							
							... 
							
							
							
							test: Add case and constr eval tests 
							
						 
						
							2023-09-03 11:52:49 -04:00  
				
					
						
							
							
								 
						
							
								85901dc141 
								
							 
						 
						
							
							
								
								chore: update cost model with placeholders for new terms to pass tests  
							
							
							
						 
						
							2023-09-03 11:52:49 -04:00  
				
					
						
							
							
								 
						
							
								40e1d39f8b 
								
							 
						 
						
							
							
								
								Add placeholders for cost model  
							
							
							
						 
						
							2023-09-03 11:52:49 -04:00  
				
					
						
							
							
								 
						
							
								33d6d3049e 
								
							 
						 
						
							
							
								
								add compute for the new terms constr and case  
							
							
							
						 
						
							2023-09-03 11:52:49 -04:00  
				
					
						
							
							
								 
						
							
								e566c4e1de 
								
							 
						 
						
							
							
								
								feat(uplc): add Case and Const terms  
							
							... 
							
							
							
							- parsering
- interning
- flat encoding and decoding
- pretty printing
- debruijn conversion
Co-authored-by: Lucas Rosa <x@rvcas.dev> 
							
						 
						
							2023-09-03 11:52:49 -04:00  
				
					
						
							
							
								 
						
							
								dfe433ea46 
								
							 
						 
						
							
							
								
								fix: trim whitespace when loading hex strings from files  closes   #720  
							
							
							
						 
						
							2023-08-31 18:22:09 -04:00  
				
					
						
							
							
								 
						
							
								437a95bfe8 
								
							 
						 
						
							
							
								
								fix: behave like rust with hyphens  closes   #722   closes   #690  
							
							
							
						 
						
							2023-08-31 18:00:21 -04:00  
				
					
						
							
							
								 
						
							
								dca09811c1 
								
							 
						 
						
							
							
								
								fix: empty records crashing code gen  closes   #728  
							
							
							
						 
						
							2023-08-31 17:39:38 -04:00  
				
					
						
							
							
								 
						
							
								fb967d4c7b 
								
							 
						 
						
							
							
								
								fix: uplc formatter of Data  closes   #716  
							
							
							
						 
						
							2023-08-31 17:20:48 -04:00  
				
					
						
							
							
								 
						
							
								51c44c6a30 
								
							 
						 
						
							
							
								
								fix: add an assert for better error messages when doing empty types  
							
							
							
						 
						
							2023-08-30 13:50:37 -04:00  
				
					
						
							
							
								 
						
							
								cd3a02416f 
								
							 
						 
						
							
							
								
								chore: rm unused pub function  
							
							
							
						 
						
							2023-08-29 22:30:06 -04:00  
				
					
						
							
							
								 
						
							
								756e16c14b 
								
							 
						 
						
							
							
								
								fix: rename assert to expect  
							
							
							
						 
						
							2023-08-29 22:30:06 -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  
				
					
						
							
							
								 
						
							
								379368c530 
								
							 
						 
						
							
							
								
								Fix clippy.  
							
							
							
						 
						
							2023-08-22 13:30:30 +02:00  
				
					
						
							
							
								 
						
							
								2f0211a7b1 
								
							 
						 
						
							
							
								
								Bump all version manually because cargo workspaces didn't work.  
							
							
							
						 
						
							2023-08-22 13:27:10 +02:00  
				
					
						
							
							
								 
						
							
								780a61e3e8 
								
							 
						 
						
							
							
								
								Release 1.0.16-alpha  
							
							... 
							
							
							
							aiken@1.0.16-alpha
Generated by cargo-workspaces 
							
						 
						
							2023-08-22 13:18:48 +02:00  
				
					
						
							
							
								 
						
							
								7883aff5f7 
								
							 
						 
						
							
							
								
								revert  619b73d03e 
							
							... 
							
							
							
							There's really no scenario where we want to generate boilerplate that
  always end up being removed. In particular, the boilerplate breaks
  tutorial as it generate conflicting validators in the blueprint.
  The only argument in favor of the boilerplate is to serve as example
  and show people some syntax reminder. However, this is better done in
  the README or on the user manual directly. 
							
						 
						
							2023-08-22 12:59:36 +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  
				
					
						
							
							
								 
						
							
								139226cdab 
								
							 
						 
						
							
							
								
								Support interactive blueprint parameter application.  
							
							
							
						 
						
							2023-08-19 13:39:39 -04:00  
				
					
						
							
							
								 
						
							
								c1b8040ae2 
								
							 
						 
						
							
							
								
								Add helper for splitting a long line into multiple lines.  
							
							
							
						 
						
							2023-08-19 13:39:39 -04:00  
				
					
						
							
							
								 
						
							
								961e323c36 
								
							 
						 
						
							
							
								
								Enable iterating over validator's parameters with a callback  
							
							... 
							
							
							
							This is how we'll construct parameters interactively. We need to lookup the definition, and provide a data representation for it. 
							
						 
						
							2023-08-19 13:39:39 -04:00  
				
					
						
							
							
								 
						
							
								051e9a6851 
								
							 
						 
						
							
							
								
								Add some utility functions for displaying Term/PlutusData  
							
							... 
							
							
							
							This is useful with the blueprint stuff, where Term are often just plain PlutusData. 
							
						 
						
							2023-08-19 13:39:39 -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  
				
					
						
							
							
								 
						
							
								2600937447 
								
							 
						 
						
							
							
								
								chore: cargo fmt  
							
							
							
						 
						
							2023-08-16 22:56:22 -04:00  
				
					
						
							
							
								 
						
							
								649039c993 
								
							 
						 
						
							
							
								
								tx simulate still need fee work  
							
							
							
						 
						
							2023-08-16 22:37:00 -04:00  
				
					
						
							
							
								 
						
							
								050c41c8dc 
								
							 
						 
						
							
							
								
								tx simulate returns a vector of exbudgets now  
							
							
							
						 
						
							2023-08-16 22:37:00 -04:00  
				
					
						
							
							
								 
						
							
								8cf92ce8ed 
								
							 
						 
						
							
							
								
								`aiken new`: Try to get the latest tag of stdlib  
							
							
							
						 
						
							2023-08-16 22:30:15 -04:00  
				
					
						
							
							
								 
						
							
								c95f43ae07 
								
							 
						 
						
							
							
								
								add one more test  
							
							
							
						 
						
							2023-08-16 21:59:25 -04:00  
				
					
						
							
							
								 
						
							
								20aa54b5ca 
								
							 
						 
						
							
							
								
								fix: last test fixed  
							
							
							
						 
						
							2023-08-16 21:59:25 -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  
				
					
						
							
							
								 
						
							
								6ecb3f08b0 
								
							 
						 
						
							
							
								
								chore: default stdlib on new is 1.5.0  
							
							
							
						 
						
							2023-08-16 13:24:10 -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  
				
					
						
							
							
								 
						
							
								4a1ae9f412 
								
							 
						 
						
							
							
								
								set eval to public  
							
							
							
						 
						
							2023-08-12 16:42:23 -04:00  
				
					
						
							
							
								 
						
							
								ca4a9fcd3d 
								
							 
						 
						
							
							
								
								chore: make eval function and SlotConfig public  
							
							
							
						 
						
							2023-08-11 20:33:08 -04:00  
				
					
						
							
							
								 
						
							
								8af253e1df 
								
							 
						 
						
							
							
								
								chore: make slot_to_begin_posix_time a public function  
							
							
							
						 
						
							2023-08-11 20:05:22 -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  
				
					
						
							
							
								 
						
							
								367dabafb5 
								
							 
						 
						
							
							
								
								fix: update last 2 tests for new recursion optimization  
							
							
							
						 
						
							2023-08-07 19:06:00 -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  
				
					
						
							
							
								 
						
							
								624fdee9ea 
								
							 
						 
						
							
							
								
								keep traces in tests  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								36c80f36c1 
								
							 
						 
						
							
							
								
								fix tests  
							
							
							
						 
						
							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  
				
					
						
							
							
								 
						
							
								49a0a91103 
								
							 
						 
						
							
							
								
								fix tests again  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								f5c7d222aa 
								
							 
						 
						
							
							
								
								optmization fix  
							
							
							
						 
						
							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  
				
					
						
							
							
								 
						
							
								55ae708e3e 
								
							 
						 
						
							
							
								
								checkpoint: start on function hoisting  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								2b7e7ead1c 
								
							 
						 
						
							
							
								
								feat: add support for validator arguments  
							
							... 
							
							
							
							feat: finish expect type on data constr
fix: tuple clause was exposing all items regardless of discard
fix: tuple clause was not receiving complex_clause flag
fix: condition for assert where constructor had 0 args was tripping assert
fix: had to rearrange var and discard assignment to ensure correct val is returned
fix: binop had the wrong type 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								7d4e136467 
								
							 
						 
						
							
							
								
								checkpoint  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								fd83c9a739 
								
							 
						 
						
							
							
								
								feat: fix up generic type functions to work with the new air tree functions  
							
							... 
							
							
							
							chore: remove commented code 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								b3714ca9d0 
								
							 
						 
						
							
							
								
								fix: list clause guard for final clause needs to use list accessor  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								2c61ecd4bb 
								
							 
						 
						
							
							
								
								feat: finish up nested clauses  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								a3afb62861 
								
							 
						 
						
							
							
								
								chore: fixing nested clauses to match aiken stack air  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								95af421f95 
								
							 
						 
						
							
							
								
								feat: finish tuple conditions  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								05b6b2a97d 
								
							 
						 
						
							
							
								
								chore: rename some functions  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								c025073056 
								
							 
						 
						
							
							
								
								fix: List clauses were destructuring the next element unnecessarily  
							
							... 
							
							
							
							feat: finish nested constructor clauses 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								f6e163d16d 
								
							 
						 
						
							
							
								
								feat: start on nested clauses  
							
							... 
							
							
							
							chore: remove then field from list clause guard and clause guard 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								5bcc425f0f 
								
							 
						 
						
							
							
								
								feat: changed air expressions clause guard  
							
							... 
							
							
							
							and list clause guard to air statements 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								023be88bf6 
								
							 
						 
						
							
							
								
								chore: another checkpoint  
							
							... 
							
							
							
							fix: guard clause to properly check condition 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								f94c8213b6 
								
							 
						 
						
							
							
								
								checkpoint  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								0854d71836 
								
							 
						 
						
							
							
								
								chore: another checkpoint and renamed ClauseProperties fields  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								d731757123 
								
							 
						 
						
							
							
								
								feat: start on clauses in when conditions  
							
							... 
							
							
							
							**checkpoint** 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								96959011e9 
								
							 
						 
						
							
							
								
								feat: finish up build. just have helper methods  
							
							... 
							
							
							
							feat: Create an air and AirTree iterator.
This allows us to iterate forwards or backwards over the tree as a vec.
chore: moved around some functions 
							
						 
						
							2023-08-07 12:02:44 -04:00  
				
					
						
							
							
								 
						
							
								ba3265054c 
								
							 
						 
						
							
							
								
								chore: move tree to gen_uplc2 and create a duplicate air file without scope  
							
							
							
						 
						
							2023-08-07 12:02:44 -04:00