dc5ae296db 
								
							 
						 
						
							
							
								
								implement anonymous functions, more tests pass now  
							
							
							
						 
						
							2022-12-14 09:45:25 +01:00  
				
					
						
							
							
								 
						
							
								d78e2c9c6f 
								
							 
						 
						
							
							
								
								feat: finish up generic match cases  
							
							
							
						 
						
							2022-12-14 09:45:23 +01:00  
				
					
						
							
							
								 
						
							
								e43063d447 
								
							 
						 
						
							
							
								
								overhaul monomorphize to cover all generic cases  
							
							... 
							
							
							
							test b passes 
							
						 
						
							2022-12-14 09:45:23 +01:00  
				
					
						
							
							
								 
						
							
								15dc202810 
								
							 
						 
						
							
							
								
								Feat: generic function call tests work  
							
							
							
						 
						
							2022-12-14 09:45:23 +01:00  
				
					
						
							
							
								 
						
							
								e4d9ca4586 
								
							 
						 
						
							
							
								
								support generics  
							
							
							
						 
						
							2022-12-14 09:45:23 +01:00  
				
					
						
							
							
								 
						
							
								16fbf5bbcd 
								
							 
						 
						
							
							
								
								feat: fix recursive functions  
							
							
							
						 
						
							2022-12-14 09:45:22 +01:00  
				
					
						
							
							
								 
						
							
								3d3b3d7e10 
								
							 
						 
						
							
							
								
								checkpoint  
							
							
							
						 
						
							2022-12-14 09:45:22 +01:00  
				
					
						
							
							
								 
						
							
								95986fed83 
								
							 
						 
						
							
							
								
								Fix lexer for signed integers.  
							
							
							
						 
						
							2022-12-13 19:52:30 -05:00  
				
					
						
							
							
								 
						
							
								18bf89418a 
								
							 
						 
						
							
							
								
								Fix codegen for binary operator 'or'  
							
							... 
							
							
							
							a && b → if a { b } else { false }
  a || b → if a { true } else { b } 
							
						 
						
							2022-12-13 18:52:23 -05:00  
				
					
						
							
							
								 
						
							
								431b0cfcf2 
								
							 
						 
						
							
							
								
								Preserve newlines after blocks of comments.  
							
							... 
							
							
							
							This is an example of output from the formatter now:
  ```
  //// Some module documentation
  // foo
  const a: Int = 42
  // Some comment block
  // For which newlines are respected.
  // Foo
  // Another one
  /// add_one documentation
  pub fn add_one(n: Int) -> Int {
    // n + 1
    n + 1
  }
  ```
  before this commit, comments would all be collapsed into one group
  above the function as:
  ```
  // Some comment block
  // For which newlines are respected.
  // Foo
  // Another one
  /// add_one documentation
  pub fn add_one(n: Int) -> Int {
  ``` 
							
						 
						
							2022-12-13 18:52:23 -05:00  
				
					
						
							
							
								 
						
							
								22a526bb13 
								
							 
						 
						
							
							
								
								Enforce unique top-level names for tests too.  
							
							... 
							
							
							
							This prevents the compiler from crashing later on. Test names should be unique and not clash with function names. 
							
						 
						
							2022-12-13 18:52:23 -05:00  
				
					
						
							
							
								 
						
							
								4dfb454d8a 
								
							 
						 
						
							
							
								
								refactor: change match to if matches!  
							
							
							
						 
						
							2022-12-13 10:34:34 -05:00  
				
					
						
							
							
								 
						
							
								1637a0d30e 
								
							 
						 
						
							
							
								
								Add --match-tests to 'check' cmd  
							
							... 
							
							
							
							For running only tests matching a certain pattern. Useful when doing TDD. 
							
						 
						
							2022-12-13 10:34:34 -05:00  
				
					
						
							
							
								 
						
							
								69db9696d6 
								
							 
						 
						
							
							
								
								feat: prefix tuples with hash again cause ambguity with call  
							
							
							
						 
						
							2022-12-13 10:27:17 -05:00  
				
					
						
							
							
								 
						
							
								6dc4738b66 
								
							 
						 
						
							
							
								
								feat: update formatter for new changes  
							
							
							
						 
						
							2022-12-12 19:22:11 -05:00  
				
					
						
							
							
								 
						
							
								a4f6388eca 
								
							 
						 
						
							
							
								
								feat: remove the need for # in front of tuples  
							
							
							
						 
						
							2022-12-12 19:22:11 -05:00  
				
					
						
							
							
								 
						
							
								dfc57b347a 
								
							 
						 
						
							
							
								
								feat: switch generic type args to be delimited by chevrons  
							
							
							
						 
						
							2022-12-12 19:22:11 -05:00  
				
					
						
							
							
								 
						
							
								a18aad7daf 
								
							 
						 
						
							
							
								
								refactor(project): use new Options instead of a spiderweb of bools  
							
							
							
						 
						
							2022-12-10 19:14:58 -05:00  
				
					
						
							
							
								 
						
							
								0eb3cf221b 
								
							 
						 
						
							
							
								
								Trigger and report on more events in the compilation pipeline.  
							
							
							
						 
						
							2022-12-09 15:04:02 +01:00  
				
					
						
							
							
								 
						
							
								749d8ecb10 
								
							 
						 
						
							
							
								
								Fix formatter to not prefix tests as 'pub'  
							
							
							
						 
						
							2022-12-09 14:35:50 +01:00  
				
					
						
							
							
								 
						
							
								d09d38d65b 
								
							 
						 
						
							
							
								
								Add a flag '--skip-tests' to the 'check' cmd.  
							
							... 
							
							
							
							So that tests can be skipped, and the old behavior recovered if necessary.
  Tests execution is on by default however. 
							
						 
						
							2022-12-09 14:14:15 +01:00  
				
					
						
							
							
								 
						
							
								4ad74bef1f 
								
							 
						 
						
							
							
								
								refactor: move prints to cli via EventListener trait  
							
							
							
						 
						
							2022-12-08 19:25:28 -05:00  
				
					
						
							
							
								 
						
							
								801ab3989e 
								
							 
						 
						
							
							
								
								feat: display test runner summary alongside test results.  
							
							... 
							
							
							
							Moar sexy. 
							
						 
						
							2022-12-08 19:25:28 -05:00  
				
					
						
							
							
								 
						
							
								4cae4a4467 
								
							 
						 
						
							
							
								
								pad left instead of right, so units/thousands are aligned.  
							
							
							
						 
						
							2022-12-08 19:25:28 -05:00  
				
					
						
							
							
								 
						
							
								2ba712eef6 
								
							 
						 
						
							
							
								
								feat: start adding padding to test output  
							
							
							
						 
						
							2022-12-08 19:25:28 -05:00  
				
					
						
							
							
								 
						
							
								5770ea2456 
								
							 
						 
						
							
							
								
								Make test runner more sexy.  
							
							... 
							
							
							
							Using colors. 
							
						 
						
							2022-12-08 19:25:28 -05:00  
				
					
						
							
							
								 
						
							
								db25ff3817 
								
							 
						 
						
							
							
								
								refactor: run_tests to avoid repetition.  
							
							
							
						 
						
							2022-12-08 19:25:28 -05:00  
				
					
						
							
							
								 
						
							
								e9d8e1d317 
								
							 
						 
						
							
							
								
								feat: print budget consumed by test  
							
							
							
						 
						
							2022-12-08 19:25:24 -05:00  
				
					
						
							
							
								 
						
							
								141a9aef30 
								
							 
						 
						
							
							
								
								feat: impl Sub for ExBudget  
							
							
							
						 
						
							2022-12-08 19:24:20 -05:00  
				
					
						
							
							
								 
						
							
								f250d3df84 
								
							 
						 
						
							
							
								
								feat: eval should take initial budget  
							
							
							
						 
						
							2022-12-08 19:24:20 -05:00  
				
					
						
							
							
								 
						
							
								4cdb5d8d02 
								
							 
						 
						
							
							
								
								Implement test runner.  
							
							... 
							
							
							
							easy. 
							
						 
						
							2022-12-08 19:24:20 -05:00  
				
					
						
							
							
								 
						
							
								384c4daa4a 
								
							 
						 
						
							
							
								
								feat: add test_gen function  
							
							
							
						 
						
							2022-12-08 19:24:20 -05:00  
				
					
						
							
							
								 
						
							
								bc785673b2 
								
							 
						 
						
							
							
								
								Fix compilation errors for the newly introduce test & add type inference.  
							
							... 
							
							
							
							Tests are basically functions for which the return type should unify with bool. In principle, the type checker could also check that a test function has no arguments but, a test function with arguments wouldn't parse in the first place; feels a bit hacky but it works when considering the pipeline as a whole.
  Note that the code generation is still to be done. 
							
						 
						
							2022-12-08 19:24:20 -05:00  
				
					
						
							
							
								 
						
							
								ea48747825 
								
							 
						 
						
							
							
								
								Extend parser for 'test' keyword.  
							
							
							
						 
						
							2022-12-08 19:24:20 -05:00  
				
					
						
							
							
								 
						
							
								a65b4aa471 
								
							 
						 
						
							
							
								
								feat: add test def and test token  
							
							
							
						 
						
							2022-12-08 19:24:20 -05:00  
				
					
						
							
							
								 
						
							
								80a9b7b36a 
								
							 
						 
						
							
							
								
								feat: add map support and tuple deconstruction in let  
							
							
							
						 
						
							2022-12-08 14:28:30 -05:00  
				
					
						
							
							
								 
						
							
								26d2a95618 
								
							 
						 
						
							
							
								
								missing a couple forces  
							
							
							
						 
						
							2022-12-08 14:28:30 -05:00  
				
					
						
							
							
								 
						
							
								2f7131e9b8 
								
							 
						 
						
							
							
								
								feat: add tuples and streamline conversion of types to and from data  
							
							
							
						 
						
							2022-12-07 08:40:23 -05:00  
				
					
						
							
							
								 
						
							
								45990f1f84 
								
							 
						 
						
							
							
								
								feat: unify tuples and stdlib updates  
							
							
							
						 
						
							2022-12-06 22:23:40 -05:00  
				
					
						
							
							
								 
						
							
								3f47a1f4b8 
								
							 
						 
						
							
							
								
								fix: constr issue  
							
							... 
							
							
							
							- also fixed constant parsing
- added new cbor flag to eval
Co-authored-by: rvcas <x@rvcas.dev> 
							
						 
						
							2022-12-05 22:55:57 -05:00  
				
					
						
							
							
								 
						
							
								7875af7d35 
								
							 
						 
						
							
							
								
								feat: better errors for incorrect contructor making  
							
							
							
						 
						
							2022-12-05 18:11:04 -05:00  
				
					
						
							
							
								 
						
							
								7e6dc978a1 
								
							 
						 
						
							
							
								
								feat: commit latest build assets for sample  
							
							
							
						 
						
							2022-12-05 14:18:44 -05:00  
				
					
						
							
							
								 
						
							
								ed3d143477 
								
							 
						 
						
							
							
								
								feat: rename ir to air  
							
							
							
						 
						
							2022-12-05 14:18:44 -05:00  
				
					
						
							
							
								 
						
							
								24d724e10e 
								
							 
						 
						
							
							
								
								chore: fix fmt  
							
							
							
						 
						
							2022-12-05 14:18:44 -05:00  
				
					
						
							
							
								 
						
							
								3e68204768 
								
							 
						 
						
							
							
								
								replace uplc with uplc_two and move structs over  
							
							
							
						 
						
							2022-12-05 14:18:44 -05:00  
				
					
						
							
							
								 
						
							
								22fbef2fbe 
								
							 
						 
						
							
							
								
								feat: finish up binops and fix constr creation  
							
							
							
						 
						
							2022-12-05 14:18:44 -05:00  
				
					
						
							
							
								 
						
							
								0fda535c50 
								
							 
						 
						
							
							
								
								feat: add module constants except for tuple  
							
							
							
						 
						
							2022-12-05 14:18:44 -05:00  
				
					
						
							
							
								 
						
							
								de9302a877 
								
							 
						 
						
							
							
								
								feat: finish list destructure in when matches  
							
							
							
						 
						
							2022-12-05 14:18:44 -05:00  
				
					
						
							
							
								 
						
							
								8cbdf97d22 
								
							 
						 
						
							
							
								
								finish uplc code gen for complex clauses with constr  
							
							
							
						 
						
							2022-12-05 14:18:44 -05:00  
				
					
						
							
							
								 
						
							
								f48039fd4f 
								
							 
						 
						
							
							
								
								Add ability to generate ir with complex constructor cases  
							
							
							
						 
						
							2022-12-05 14:18:44 -05:00