1
0

Commit Graph

  • 43b2393d8a Begin AST overhaul Jeff 2024-08-14 14:28:39 -0400
  • e7b5390a55 Add more value mutability Jeff 2024-08-14 04:59:27 -0400
  • 8666f1cd9b Add parsing for mutable assignment Jeff 2024-08-14 03:53:15 -0400
  • 3ff3a7568c Continue adding mutable variables Jeff 2024-08-14 01:13:43 -0400
  • 535e120256 Add mutable values Jeff 2024-08-14 01:03:46 -0400
  • 17286896a8 Add async blocks Jeff 2024-08-13 23:45:17 -0400
  • d32633272c Add docs and an unused function for fun Jeff 2024-08-13 22:57:37 -0400
  • 58780b5530 Write docs and clean up Jeff 2024-08-13 22:25:33 -0400
  • 64a3ce4cd3 Implement subtraction assignment Jeff 2024-08-13 21:24:56 -0400
  • 5c8e72a6f7 Implement fields struct instantiation Jeff 2024-08-13 19:41:36 -0400
  • b55a79d6bf Add parsing for fields structs Jeff 2024-08-13 18:48:02 -0400
  • a78d560a0d Add docs Jeff 2024-08-13 18:27:03 -0400
  • 5757f52dbd Refactor to move assingment out of other binary operations Jeff 2024-08-13 17:34:45 -0400
  • b1337900fb Add analysis to prevent tuple structs with wrong types Jeff 2024-08-13 16:46:54 -0400
  • 83aa53b998 Add instantiation for tuple structs Jeff 2024-08-13 16:21:44 -0400
  • 049790726a Add parsing for tuple structs Jeff 2024-08-13 15:12:32 -0400
  • 1d75bd6594 Add instantiating unit structs Jeff 2024-08-13 14:21:31 -0400
  • 7e7448fe52 Add parsing for unit struct defintions Jeff 2024-08-13 13:54:16 -0400
  • 87455ed792 Continue adding struct lexing and test Jeff 2024-08-13 13:28:22 -0400
  • 2b8dda14e3 Add anaylsis to check for valid fields and indexes Jeff 2024-08-13 13:12:13 -0400
  • 40a71da3a5 Fix identifier caching; Add docs; Add minor fixes Jeff 2024-08-13 12:23:25 -0400
  • f3bef42563 Write some failing analyzer tests Jeff 2024-08-12 19:39:26 -0400
  • 390511fa20 Rewrite list indexing to use [] syntax Jeff 2024-08-12 19:06:57 -0400
  • 5ad6012021 Refine parsing and lexing Jeff 2024-08-12 16:57:10 -0400
  • 0fb0b63a97 Fix dot notations precedence; Add some miscellaneous expansions Jeff 2024-08-12 15:02:04 -0400
  • a61c1756f2 Begin fixing map property parsing Jeff 2024-08-12 11:24:24 -0400
  • f62cb13089 Allow indexing lists with ranges Jeff 2024-08-12 10:43:18 -0400
  • 2a0737fd45 Add test; Clean up context Jeff 2024-08-12 10:29:06 -0400
  • 0ba54e9717 Add another token type; Add ranges Jeff 2024-08-12 10:08:34 -0400
  • 755fe5d899 Refactor to use parser's 'parse_block' method Jeff 2024-08-12 09:06:42 -0400
  • c71c4d2d07 Refactor VM to own its context Jeff 2024-08-12 08:54:21 -0400
  • bf11bd1f0f Fine-tune pratt parsing to support more complexity Jeff 2024-08-12 08:35:08 -0400
  • c56a187d05 Add parser tests for new unary operations Jeff 2024-08-12 06:00:14 -0400
  • 2c374a1cd7 Begin adding unary operators Jeff 2024-08-12 05:44:05 -0400
  • 74cfef1832 Work out the finer details of the garbage collector Jeff 2024-08-12 04:10:07 -0400
  • 0e3a3e94c8 Add context tests Jeff 2024-08-11 22:47:52 -0400
  • 2463e44301 Test and implement basic garbage collection Jeff 2024-08-11 22:41:40 -0400
  • 78228ce8d6 Add new analyzer and vm tests Jeff 2024-08-11 22:02:17 -0400
  • f2c0786bfb Simplify "run" function Jeff 2024-08-11 21:42:16 -0400
  • de30f241a8 Refactor function call dot notation; Add better analysis of function calls and property access Jeff 2024-08-11 21:37:44 -0400
  • c0254e8a94 Refactor to use type checking Jeff 2024-08-11 19:18:13 -0400
  • 77814c4576 Begin refactoring to use type checking Jeff 2024-08-11 19:00:37 -0400
  • 7259206c98 Add analyzing built-in function calls Jeff 2024-08-11 18:11:59 -0400
  • 3a2dd28efb Improve error layout Jeff 2024-08-11 17:59:52 -0400
  • 3b0c74010e Rename modules Jeff 2024-08-11 17:24:05 -0400
  • f5836b66dc Clean up Jeff 2024-08-11 16:57:52 -0400
  • 9a9d9458ae Clean up block/map parsing code Jeff 2024-08-11 15:39:42 -0400
  • 9338d73621 Add to_string function; Get fizzbuzz example working Jeff 2024-08-11 15:12:19 -0400
  • 28c65b0715 Clean up control flow code in the VM; Remove returns from if and if/else_if statements Jeff 2024-08-11 15:03:26 -0400
  • 0c73f80947 Implment control flow lexing and parsing Jeff 2024-08-11 14:35:33 -0400
  • 24e21aa0b5 Add test; Attempt to clean up map and block parsing Jeff 2024-08-11 13:16:16 -0400
  • 37e3e1116d Add while loops Jeff 2024-08-10 05:23:43 -0400
  • 1687fd7fe3 Clean up; Add an analyzer test Jeff 2024-08-10 04:45:30 -0400
  • a46e5dd365 Fix remaining doc tests Jeff 2024-08-10 04:32:27 -0400
  • 8f0d07b546 Fix parsing bug and some docs tests Jeff 2024-08-10 04:29:46 -0400
  • f2823b6236 Tweak operator precedence Jeff 2024-08-10 00:14:38 -0400
  • 2ae75dcdd0 Make meticulous changes to pratt parser Jeff 2024-08-10 00:01:50 -0400
  • 9ea203f419 Use context and replace old variable map Jeff 2024-08-09 21:12:36 -0400
  • e1b04328d5 Add context Jeff 2024-08-09 20:52:13 -0400
  • f50b765c1e Clean up Jeff 2024-08-09 20:24:18 -0400
  • 82fbf796f3 Implement postfix parsing Jeff 2024-08-09 18:14:46 -0400
  • 60f8aab805 Refactor pratt parser Jeff 2024-08-09 14:01:01 -0400
  • ed82f3c64f Lex, parse and run maps and blocks Jeff 2024-08-09 11:41:23 -0400
  • f389f7e422 Implement equality operation Jeff 2024-08-09 07:15:09 -0400
  • 24a2642f17 Add modulo support Jeff 2024-08-09 07:02:55 -0400
  • 2cf580d111 Add division Jeff 2024-08-09 06:46:24 -0400
  • a048577143 Improve assignment parsing Jeff 2024-08-09 06:32:44 -0400
  • 929468338d Add map parsing Jeff 2024-08-09 06:09:59 -0400
  • 55a8661618 Begin adding maps Jeff 2024-08-09 05:18:39 -0400
  • d0dba35285 Add && and || operators Jeff 2024-08-09 04:56:24 -0400
  • 8c8fde94ce Refactor the abstract syntax tree Jeff 2024-08-09 04:23:02 -0400
  • b9081f8653 Add comparison statement to replace four separate statements Jeff 2024-08-09 03:00:48 -0400
  • 580b85e2d0 Clean up tokens Jeff 2024-08-09 01:55:34 -0400
  • 83018ec5ec Improve error reports Jeff 2024-08-09 01:43:58 -0400
  • c1b71ffccc Refactor errors and clean up read_line Jeff 2024-08-09 00:49:17 -0400
  • 9766777a47 Expand lexing of complex floats Jeff 2024-08-09 00:31:38 -0400
  • 60bd8f5352 Implement subtraction and multiplication Jeff 2024-08-08 23:28:47 -0400
  • 57782d3ed6 Clean up docs Jeff 2024-08-08 22:44:34 -0400
  • cccbe7a325 Write docs Jeff 2024-08-08 21:59:09 -0400
  • 77134e5292 Begin adding fancy errors Jeff 2024-08-08 21:47:49 -0400
  • 4805a53269 Begin expanding errors Jeff 2024-08-08 20:58:56 -0400
  • fa2ce8a0bf Refactor TokenOwned and add some docs Jeff 2024-08-08 20:19:07 -0400
  • bf519ec087 Borrow string slices instead of copying them in lexing Jeff 2024-08-08 16:19:14 -0400
  • 1c24286696 Improve identifier cache Jeff 2024-08-08 14:58:12 -0400
  • d5d51e9849 Clean up Jeff 2024-08-08 13:57:53 -0400
  • a52e78150e Add lexing and parsing for I/O built-in functions; Refactor built-in function parsing Jeff 2024-08-08 13:49:40 -0400
  • 8dd62e623e Refactor add statement analysis to allow strings Jeff 2024-08-08 13:21:27 -0400
  • a639641ed2 Parse strings and string concatentation Jeff 2024-08-08 13:11:32 -0400
  • 097b09b6e3 Lex strings and string concatenation Jeff 2024-08-08 13:08:53 -0400
  • f5e822e916 Add and pass analyzer tests Jeff 2024-08-08 13:01:25 -0400
  • e4ea402dfa Move built-in functions to a separate module Jeff 2024-08-07 19:44:01 -0400
  • 9840c3c193 Clean up and add docs Jeff 2024-08-07 19:12:40 -0400
  • 1fe26e0296 Remove generic position from nodes and replace with Spans Jeff 2024-08-07 19:03:50 -0400
  • 35eca1f7b4 Clean up Jeff 2024-08-07 18:46:40 -0400
  • 285e9e7217 Implement is_odd and length functions; Pass all tests Jeff 2024-08-07 18:43:24 -0400
  • b17da5ad3c Get built-in functions working Jeff 2024-08-07 18:39:28 -0400
  • 4d7f59aee2 Begin implementing better built-in features Jeff 2024-08-07 18:24:25 -0400
  • 06f3a9b746 Remove built-in value statements Jeff 2024-08-07 15:53:43 -0400
  • cda0203242 Replace spans with a generic type Jeff 2024-08-07 15:47:37 -0400
  • 76a67c5117 Add parse examples Jeff 2024-08-07 12:32:18 -0400