| 
							
							
								 Jesse Brault | 22deb90c3e | Move ast nodes to new ast/node module. | 2025-05-26 08:30:15 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | cbf7921c95 | Refactor name-analysis module to use new AST api. | 2025-05-26 07:48:35 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 20dcb4f6ce | Major refactoring of AST module: private properties and accessors, building clearer, using Boxes. | 2025-05-25 17:27:15 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | f5f247e636 | Add class-member symbols to symbol table display. | 2025-05-21 22:31:51 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 41ab922f2c | Add interface/class test case. | 2025-05-21 12:25:23 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | d8fe97b401 | Miscellaneous gather work and related. | 2025-05-21 08:54:21 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | f614d00575 | Add shadow import failing test. | 2025-05-20 11:11:29 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 4c68d0dc28 | Flesh out gather and resolve, add todos, refactor a bit. | 2025-05-20 11:09:06 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 88270e0cdd | Add basic name-analysis phase documentation. | 2025-05-20 08:44:26 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 02d6a16cf8 | Refactor name-analysis tests. | 2025-05-19 20:22:13 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 0c2d9f8b2f | Add primitive type uses and related. | 2025-05-19 13:52:42 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | abb7aab3a4 | Refactoring of name-analysis. | 2025-05-19 09:58:43 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | c606432be2 | Work to properly resolve imports. | 2025-05-18 18:29:25 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 6b6ba1d712 | Major refactor of name analysis and related. | 2025-05-18 18:05:03 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | dcb261fd84 | Remove useless DiagnosticsContainer struct; params_seen failing because unresolved types. | 2025-05-18 16:26:05 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 4f74136d97 | Much work on use-statements and symbols. | 2025-05-18 16:18:19 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 8cd5e588a0 | Add gathering and resolving for various constructs; two-file test still failing but fails correctly. | 2025-05-18 10:26:38 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | c54e005b62 | Add build for platform function. | 2025-05-18 09:02:35 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 938391ae09 | Add use statements. | 2025-05-18 08:32:16 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 0c18b976d7 | Refactor name-analysis for multiple files; set up (failing) test case for multiple files. | 2025-05-18 08:00:32 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 3026d22750 | Remove dbg in assert_builds. | 2025-05-17 19:59:07 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | e0f2810764 | Fix pretty-print operator bug. | 2025-05-17 19:53:16 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 692411e232 | Change grammar to properly allow if, while, and for loops (without confusing it with closures). | 2025-05-17 17:30:55 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | bf06407d16 | Implement if/if-else statements in grammar, build, unparse, and pretty-print. | 2025-05-17 12:36:29 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 35d616a538 | Implement closure in ast building, unparsing, and pretty printing. | 2025-05-17 10:32:14 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 2de45817d4 | Add BacktickString building. | 2025-05-17 08:44:39 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 78e7271950 | Add DString building. | 2025-05-17 08:36:55 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | bae2048aef | Add number literal building to build.rs. | 2025-05-16 19:38:53 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 17285e84eb | Add indexing to build.rs. | 2025-05-16 19:29:39 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 15abcc92d3 | Add indoc and indexing to grammar. | 2025-05-16 19:08:18 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | f5a82c414c | Much work to produce better errors during name analysis. | 2025-05-16 15:58:42 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | dda86f75e7 | Begin name-analysis testing. | 2025-05-16 11:21:44 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 4224055860 | Refactor name-analysis code into separate module/files. | 2025-05-16 10:56:57 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 6ab9efa8fd | Add codespan-reporting to project for awesome error reporting. | 2025-05-16 09:09:25 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 2b4e042602 | Change unparse to work with IndentWriter. | 2025-05-16 08:05:59 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | ce20cece21 | Work on basic name analysis. | 2025-05-15 21:13:43 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 9805a3aad5 | Finish current version of pretty print. | 2025-05-15 16:12:17 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 58c66b437e | More work on pretty print; add dmc p3 command. | 2025-05-15 11:27:05 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 1c2e5300ac | Start on pretty_print.rs for pretty-printing ASTs. | 2025-05-15 11:06:30 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 68a2c22be7 | Delete trie.rs. | 2025-05-15 11:05:08 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | a9457c1ab9 | Successful work to compile, parse, and unparse basic Deimos. | 2025-05-15 09:40:39 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | a9fe5b473c | Delete old compile sketch files. | 2025-05-15 08:54:02 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | c980eb8a72 | Fix up unparse.rs. | 2025-05-15 08:52:34 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | e3dc46e023 | Enough work to hopefully make hello world parse and build AST. | 2025-05-15 08:13:34 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 63dec99cb5 | Add expression rules and basic left-recursive AST-expression building. | 2025-05-14 20:07:44 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 487d0383c5 | Add many rules to build.rs. | 2025-05-14 19:24:59 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 9df681e07c | Refactoring grammar to be easier to work with. | 2025-05-14 17:24:57 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 373120d34e | Add class-level declarations and components. | 2025-05-14 12:04:07 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 9d843097bc | Much work on build.rs and related. | 2025-05-14 10:04:31 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 16e180180b | Work on grammar and reorganize src/ast/mod.rs. | 2025-05-13 19:00:14 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | e4c93f319d | Fix formatting. | 2025-05-13 10:42:08 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 82af6b4dfb | Much work on grammar, AST building and unparsing. | 2025-05-13 09:46:24 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | e8aff842ed | Create and implement AST structs/enums and Unparse traits. | 2025-05-11 09:28:42 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 1a365481ab | Add smoke screen tests for parser; add some function grammar rules. | 2025-05-07 15:05:39 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 084ed4a00b | Write expressions grammar, basic testing. | 2025-04-21 09:11:02 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 90a3c40ac3 | Work on object access and number literal grammar; basic parser testing. | 2025-04-20 14:11:03 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 815168603c | Update grammar. | 2025-04-16 09:12:48 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | aa3f4b3a8b | Start translating ast to instructions. | 2025-04-15 18:58:30 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | ae8f89bb4e | Update calling conventions. | 2025-04-15 14:31:41 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 1263d84802 | Work on grammar and AST building. | 2025-04-14 08:00:05 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 94f496a63d | Sketch DvmObjectFile type and related functions. | 2025-04-14 07:59:51 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 71ee49761e | Updated dvm/main.rs to use new refactored dvm. | 2025-04-13 10:20:29 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 26d87acff5 | More refactoring of dvm; add DvmValue::String and related. | 2025-04-13 09:34:09 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 172e82025d | Rename to implementation.rs. | 2025-04-12 21:21:01 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 22e8605cc6 | Major refactoring of virtual machine. | 2025-04-12 21:20:08 -05:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 1d3a1593ee | Organized module source files. | 2025-02-03 11:03:25 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 5c75b7ab82 | Remove unused import. | 2025-02-03 10:39:05 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 36955295bc | Add enough to AST building to parse current std lib. | 2025-02-03 10:30:56 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 80c3aa9f19 | Create dmc bin. | 2025-01-31 19:12:30 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 18551af61a | More work upon AST building. | 2025-01-31 14:40:46 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 040961ed67 | Finally building an AST with Pest. | 2025-01-30 18:36:35 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | d4fb4680a5 | Update to Pest grammar for hello world. | 2024-12-31 17:23:36 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 2967ceb2fc | Remove old lexer/parser code, in preparation for Pest usage. | 2024-12-31 09:48:29 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | fc9cfcdf7c | Clean up of references and Rcs; better information hiding. | 2024-12-30 16:27:33 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 68553a756b | Remove old, unused code from vm; remove pub from various struct fields. | 2024-12-30 12:50:55 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 258fe824bd | Add dvm_panic macro for dumping state before panic call. | 2024-12-29 10:36:15 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 5322e441c5 | Fix memory leak of constant by no longer needing to make copy of constant. | 2024-12-29 10:23:16 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 7aa93c3986 | Clean up op codes. | 2024-12-28 15:35:35 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 9c4ca23765 | Remove deprecated op codes. | 2024-12-28 15:14:24 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 420db38f70 | Properly implement load and store instructions. | 2024-12-28 15:10:56 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 376ac2fa3a | Rename DmAllocObject to DvmObject. | 2024-12-28 10:23:05 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 652c1dd7f2 | Add basic, but failing, implementation of load/store object. | 2024-12-28 08:52:35 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | e7a7cba26d | Successfully printed greeting! | 2024-12-26 23:05:59 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | a6d6ca3f70 | Small cosmetic change in op_codes.rs. | 2024-12-26 15:09:55 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 3edb00ceb0 | A little bit further. | 2024-12-26 15:05:09 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 21250ea695 | Everything compiling and testing successfully. | 2024-12-26 14:52:08 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | d5153cc9fb | Various work on running byte code. | 2024-12-13 20:18:02 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 6190beaed2 | Massive work just to try to start printing a String. | 2024-12-08 22:11:33 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 97376bad72 | Work on Trie. | 2024-12-07 16:23:24 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | d4280f40e1 | More work on DvmValues and such to eventually be able to call to_string and get String bytes for printing. | 2024-12-06 15:18:19 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | cccbc6d819 | Work on vm and DvmValues and DmTypes. Added pest to get parser off the ground. | 2024-12-06 10:58:19 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 7903c1cfb3 | Attempt to implement runtime types. | 2024-12-01 12:02:52 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 9bc27b841b | Fix move errors with clone. | 2024-12-01 08:50:37 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 0dd58cdfdc | Add array types/values and misc. work. | 2024-12-01 08:42:24 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 5732c4d197 | All the work to print 42 via a platform call. | 2024-11-30 16:03:22 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | a14eb550ce | Much work on dvm implementation; not compiling yet. | 2024-11-30 08:09:19 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 21d4f6bb69 | Some clean up. | 2024-11-29 22:39:24 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 438d0e7317 | Start work on platform calls. | 2024-11-29 22:35:01 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 4fb7ada6b8 | Very skeleton work on parser. | 2024-11-29 21:25:21 -06:00 |  | 
			
				
					| 
							
							
								 Jesse Brault | 921a7fe834 | Change crate name to 'deimos'; make compiler bin subproject. | 2024-11-29 19:13:59 -06:00 |  |