99a00875a8 
					 
					
						
						
							
							cl-intern: Derive Default for StringInterner and TypedInterner  
						
						 
						
						
						
						
							
						
					 
					
						2024-08-24 18:18:22 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						8675f91aca 
					 
					
						
						
							
							cl-ast: Remove tail from let (it caused more problems that it could've solved)  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-31 03:19:20 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						de63a8c123 
					 
					
						
						
							
							cl-parser: Outline precedence parser  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-31 02:55:01 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						533436afc1 
					 
					
						
						
							
							cl-parser: Move precedence parser into its own module  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-31 02:48:39 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						1eb0516baf 
					 
					
						
						
							
							cl-parser: Rearrange to match cl-ast  
						
						 
						
						... 
						
						
						
						Also reorder `Let` in the AST 
						
						
							
						
					 
					
						2024-07-31 02:35:41 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						97808fd855 
					 
					
						
						
							
							cl-parser: Transliterate to a trait-based parsing implementation  
						
						 
						
						... 
						
						
						
						Bump version number. 
						
						
							
						
					 
					
						2024-07-31 01:39:00 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						388a69948e 
					 
					
						
						
							
							Revert "cl-ast: Unify break, return, and unary expressions"  
						
						 
						
						... 
						
						
						
						This reverts commit adb0fd229c . 
						
						
							
						
					 
					
						2024-07-30 22:31:39 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						5e7ba6de24 
					 
					
						
						
							
							cl-ast: Improve formatting of blocks and groups  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-30 20:40:22 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						adb0fd229c 
					 
					
						
						
							
							cl-ast: Unify break, return, and unary expressions  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-30 20:16:07 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						0e545077c6 
					 
					
						
						
							
							cl-ast: Remove "Continue" struct  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-30 19:42:28 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						b64cc232f9 
					 
					
						
						
							
							cl-ast: Move loop expression into unary exprs (with lowest priority)  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-30 18:21:25 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						b0341f06fd 
					 
					
						
						
							
							cl-ast: Move let into Expr  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-30 18:02:09 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						a3e383b53f 
					 
					
						
						
							
							cl-token: Flatten TokenKind into a single enum (wow!)  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-30 16:47:09 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						1b217b2e75 
					 
					
						
						
							
							typeck: Add a query for all strings  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-29 15:55:53 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						5662bd8524 
					 
					
						
						
							
							cl-structures: (ab)use the Display trait to print a numbered, sorted list of interned strings.  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-29 15:55:12 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						28f9048087 
					 
					
						
						
							
							cl-typeck: Fix infer.rs doctests  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-29 15:42:35 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						b17164b68b 
					 
					
						
						
							
							cl-interpret: Write an example for driving the interpreter  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-29 15:42:05 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						ecebefe218 
					 
					
						
						
							
							cl-interpret: Knock those modules free!  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-27 22:47:46 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						fc374e0108 
					 
					
						
						
							
							ascii.cl: TODO: throw out the interpreter (EVIL)  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-27 20:00:22 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						4295982876 
					 
					
						
						
							
							ascii.cl: Cleanup on aisle "bitwise"  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-27 19:59:35 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						729155d3a4 
					 
					
						
						
							
							ascii.cl: Fix type annotations (though they're not yet evaluated in the interpreter)  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-27 19:38:41 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						8c0ae02a71 
					 
					
						
						
							
							sample-code/ascii.cl: Make it cooler  
						
						 
						
						... 
						
						
						
						- Compute char value of digit
- Substitute C0 control codes for Unicode C0 Control Pictures
- Extend through Unicode Latin-1 Supplement
- Blank out C1 control code range 
						
						
							
						
					 
					
						2024-07-27 19:34:37 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						7f7836877e 
					 
					
						
						
							
							sample-code: Add shebang comments to samples with a main() function  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-27 18:56:36 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						b2733aa171 
					 
					
						
						
							
							cl-interpret/builtin: Add len builtin as a quick hack to write more interesting programs.  
						
						 
						
						... 
						
						
						
						This is temporary, I just want a way to get the length of a thing atm. 
						
						
							
						
					 
					
						2024-07-27 18:43:03 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						a233bb18bc 
					 
					
						
						
							
							cl-lexer: Record the contents of comments  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-27 18:41:50 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						e06a27a5b1 
					 
					
						
						
							
							cl-lexer: Treat #!/ | #!\ as a comment  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-27 18:41:18 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						3f5c5480ae 
					 
					
						
						
							
							cl-interpret: [NOT FINAL] Add unicode-aware O(n) string indexing  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-27 18:04:39 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						53cf71608a 
					 
					
						
						
							
							sample-code/hex.cl: Fix casting TODO, add to_string_radix function  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-27 17:46:27 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						883c2677d9 
					 
					
						
						
							
							cl-parser: Index is NOT a low precedence operator!!!  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-27 17:37:29 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						7d98ef87d5 
					 
					
						
						
							
							sample-code: proper type annotations on HEX_LUT, add FIXME for min and max  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-26 06:22:29 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						a188c5b65e 
					 
					
						
						
							
							hex.cl: make the lut square  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-26 06:17:00 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						872818fe7c 
					 
					
						
						
							
							sample-code/fib.cl: rename fib-iterative -> fibit (easier to type)  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-26 06:13:59 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						3aef055739 
					 
					
						
						
							
							sample-code/ascii: Use as casting to print the entire printable ASCII range  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-26 06:10:59 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						38a5d31b08 
					 
					
						
						
							
							cl-ast: Escape string and char literals when pretty-printing  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-26 05:51:20 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						e43847bbd4 
					 
					
						
						
							
							conlang: Introduce as casting  
						
						 
						
						... 
						
						
						
						Arbitrary primitive type conversion
Currently implemented as jankily as possible in the interpreter, but it works alright™️  
						
						
							
						
					 
					
						2024-07-26 05:26:08 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						a8b8a91c79 
					 
					
						
						
							
							sample-code: print->println to match interpreter behavior  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-26 05:13:52 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						695c812bf5 
					 
					
						
						
							
							cl-repl: increase jank: first positional arg is main file, remainder are imports  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-26 05:13:06 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						524c84be9e 
					 
					
						
						
							
							cl_typeck: Add new primitive types (including joking-point numbers)  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-26 03:24:34 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						4096442f75 
					 
					
						
						
							
							cl-typeck: Turn ref into a linked list.  
						
						 
						
						... 
						
						
						
						This should be fine, since the only thing you can do with a ref is dereference it. 
						
						
							
						
					 
					
						2024-07-26 02:14:41 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						03a4e76292 
					 
					
						
						
							
							cl-typeck: rustfmt implement.rs  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-26 00:15:00 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						46a1639990 
					 
					
						
						
							
							sample-code: Have fun with random number generators  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-25 23:59:41 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						5ea8039a8a 
					 
					
						
						
							
							typeck.rs: Update for new stdlib layout; don't hardcode the root stdlib module.  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-25 07:09:12 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						479efbad73 
					 
					
						
						
							
							typeck.rs: Add file-loading mode  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-25 07:08:07 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						a462dd2be3 
					 
					
						
						
							
							stdlib: Use Conlang module layout  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-25 07:05:57 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						4d6b94b570 
					 
					
						
						
							
							conlang: Bump version to v0.0.6  
						
						 
						
						... 
						
						
						
						- Major milestone: cl-typeck doesn't suck as much! 
						
						
							
  v0.0.6
 
						
					 
					
						2024-07-25 05:56:05 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						fe2b816f27 
					 
					
						
						
							
							cl-typeck: Crate-spanning refactor part 2  
						
						 
						
						... 
						
						
						
						- Removed all unreferenced files
- Reimplemented missing/nonfunctional behavior
- Added module documentation for most things
  - TODO: item-level docs on Entry(Mut)
- Reparented the stages of Table population into the `stage` module.
  - TODO: rewrite type inference to use only the tools provided by Table. 
						
						
							
						
					 
					
						2024-07-25 05:55:11 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						e19127facc 
					 
					
						
						
							
							cl-typeck: Crate-spanning refactor  
						
						 
						
						... 
						
						
						
						TODO: remove all unreferenced files
TODO: Finish resolving statically known types of values
TODO: Type inference 
						
						
							
						
					 
					
						2024-07-24 18:22:42 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						b7ad285a11 
					 
					
						
						
							
							cl-typeck: give Handle accessors for useful attributes  
						
						 
						
						
						
						
							
						
					 
					
						2024-07-24 14:29:27 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						61d8cf8550 
					 
					
						
						
							
							stdlib: Update num.cl with eased name resolution restrictions  
						
						 
						
						
						
						
							
  v0.5.0_1
 
						
					 
					
						2024-07-21 06:03:16 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						70872d86f9 
					 
					
						
						
							
							cl-typeck: Improve path resolution semantics, and DON'T REPARENT IMPLs  
						
						 
						
						... 
						
						
						
						- Perform heirarchical resolution through "transparent" nodes
- Reparenting impls broke relative path traversal entirely. To impl something, it must already be in scope anyway.
- TODO: well-formedness checks? 
						
						
							
						
					 
					
						2024-07-21 06:01:54 -05:00