Commit Graph

  • df68d6f2e6 cl-interpret/tests: Fix broken test main John 2024-09-19 14:29:21 -0500
  • ae11d87d68 Merge pull request 'Basic floating point support (WIP)' (#18) from floats into main John 2024-09-19 19:27:51 +0000
  • 96be5aba6c repline: Add a code sample demonstrating the use of prebaked::read_and #18 John 2024-09-19 14:08:50 -0500
  • b9f4994930 sample-code: update sqrt.cl to use new float syntax John 2024-09-19 14:02:58 -0500
  • f4fe07a08b cl-lexer: Hack around ambiguity between 1.0 and 1..0 John 2024-09-19 14:02:02 -0500
  • 94be5d787f cl-ast: always pretty-print decimal for floats John 2024-09-19 14:00:22 -0500
  • 5deb585054 cl-ast: Add float support - Smuggle floats as integers to maintain eq - This is bad, but not terrible for spec-compliant floats. Might have issues with NaN. John 2024-09-19 13:20:19 -0500
  • 56e71d6782 cl-lexer: Add a hacky workaround for float support. John 2024-09-19 13:16:27 -0500
  • c62df3d8b3 sample-code: Add square root demo John 2024-09-18 01:53:04 -0500
  • fad28beb05 interpreter: Add float machinery - operators - type casting John 2024-09-18 01:02:09 -0500
  • 0f8b0824ac cl-parser: Fix precedence of comparison operators John 2024-09-18 00:57:44 -0500
  • 99a00875a8 cl-intern: Derive Default for StringInterner and TypedInterner John 2024-08-24 18:18:22 -0500
  • 8675f91aca cl-ast: Remove tail from let (it caused more problems that it could've solved) new_ast John 2024-07-31 03:19:20 -0500
  • de63a8c123 cl-parser: Outline precedence parser John 2024-07-31 02:55:01 -0500
  • 533436afc1 cl-parser: Move precedence parser into its own module John 2024-07-31 02:48:39 -0500
  • 1eb0516baf cl-parser: Rearrange to match cl-ast John 2024-07-31 02:35:41 -0500
  • 97808fd855 cl-parser: Transliterate to a trait-based parsing implementation John 2024-07-31 01:39:00 -0500
  • 388a69948e Revert "cl-ast: Unify break, return, and unary expressions" John 2024-07-30 22:31:39 -0500
  • 5e7ba6de24 cl-ast: Improve formatting of blocks and groups John 2024-07-30 20:40:22 -0500
  • adb0fd229c cl-ast: Unify break, return, and unary expressions John 2024-07-30 20:16:07 -0500
  • 0e545077c6 cl-ast: Remove "Continue" struct John 2024-07-30 19:42:28 -0500
  • b64cc232f9 cl-ast: Move loop expression into unary exprs (with lowest priority) John 2024-07-30 18:21:25 -0500
  • b0341f06fd cl-ast: Move let into Expr John 2024-07-30 18:02:09 -0500
  • a3e383b53f cl-token: Flatten TokenKind into a single enum (wow!) John 2024-07-30 16:47:09 -0500
  • 1b217b2e75 typeck: Add a query for all strings John 2024-07-29 15:55:53 -0500
  • 5662bd8524 cl-structures: (ab)use the Display trait to print a numbered, sorted list of interned strings. John 2024-07-29 15:55:12 -0500
  • 28f9048087 cl-typeck: Fix infer.rs doctests John 2024-07-29 15:42:35 -0500
  • b17164b68b cl-interpret: Write an example for driving the interpreter John 2024-07-29 15:42:05 -0500
  • ecebefe218 cl-interpret: Knock those modules free! John 2024-07-27 22:47:46 -0500
  • fc374e0108 ascii.cl: TODO: throw out the interpreter (EVIL) John 2024-07-27 20:00:22 -0500
  • 4295982876 ascii.cl: Cleanup on aisle "bitwise" John 2024-07-27 19:59:35 -0500
  • 729155d3a4 ascii.cl: Fix type annotations (though they're not yet evaluated in the interpreter) John 2024-07-27 19:38:41 -0500
  • 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 John 2024-07-27 19:34:37 -0500
  • 7f7836877e sample-code: Add shebang comments to samples with a main() function John 2024-07-27 18:56:36 -0500
  • b2733aa171 cl-interpret/builtin: Add len builtin as a quick hack to write more interesting programs. John 2024-07-27 18:43:03 -0500
  • a233bb18bc cl-lexer: Record the contents of comments John 2024-07-27 18:41:50 -0500
  • e06a27a5b1 cl-lexer: Treat #!/ | #!\ as a comment John 2024-07-27 18:41:18 -0500
  • 3f5c5480ae cl-interpret: [NOT FINAL] Add unicode-aware O(n) string indexing John 2024-07-27 18:04:39 -0500
  • 53cf71608a sample-code/hex.cl: Fix casting TODO, add to_string_radix function John 2024-07-27 17:46:27 -0500
  • 883c2677d9 cl-parser: Index is NOT a low precedence operator!!! John 2024-07-27 17:37:29 -0500
  • 7d98ef87d5 sample-code: proper type annotations on HEX_LUT, add FIXME for min and max John 2024-07-26 06:22:29 -0500
  • a188c5b65e hex.cl: make the lut square John 2024-07-26 06:17:00 -0500
  • 872818fe7c sample-code/fib.cl: rename fib-iterative -> fibit (easier to type) John 2024-07-26 06:13:59 -0500
  • 3aef055739 sample-code/ascii: Use as casting to print the entire printable ASCII range John 2024-07-26 06:10:59 -0500
  • 38a5d31b08 cl-ast: Escape string and char literals when pretty-printing John 2024-07-26 05:51:20 -0500
  • e43847bbd4 conlang: Introduce as casting Arbitrary primitive type conversion John 2024-07-26 05:26:08 -0500
  • a8b8a91c79 sample-code: print->println to match interpreter behavior John 2024-07-26 05:13:52 -0500
  • 695c812bf5 cl-repl: increase jank: first positional arg is main file, remainder are imports John 2024-07-26 05:13:06 -0500
  • 524c84be9e cl_typeck: Add new primitive types (including joking-point numbers) John 2024-07-26 03:24:34 -0500
  • 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. John 2024-07-26 02:14:41 -0500
  • 03a4e76292 cl-typeck: rustfmt implement.rs John 2024-07-26 00:15:00 -0500
  • 46a1639990 sample-code: Have fun with random number generators John 2024-07-25 23:59:41 -0500
  • 5ea8039a8a typeck.rs: Update for new stdlib layout; don't hardcode the root stdlib module. John 2024-07-25 07:09:12 -0500
  • 479efbad73 typeck.rs: Add file-loading mode John 2024-07-25 07:08:07 -0500
  • a462dd2be3 stdlib: Use Conlang module layout John 2024-07-25 07:05:57 -0500
  • 4d6b94b570 conlang: Bump version to v0.0.6 - Major milestone: cl-typeck doesn't suck as much! v0.0.6 John 2024-07-25 05:56:05 -0500
  • 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. John 2024-07-25 05:55:11 -0500
  • e19127facc cl-typeck: Crate-spanning refactor John 2024-07-24 18:22:42 -0500
  • b7ad285a11 cl-typeck: give Handle accessors for useful attributes John 2024-07-24 14:29:27 -0500
  • 61d8cf8550 stdlib: Update num.cl with eased name resolution restrictions v0.5.0_1 John 2024-07-21 06:03:16 -0500
  • 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? John 2024-07-21 06:01:54 -0500
  • 6bf34fdff6 cl-typeck: Add path-resolution relative to an ID Great for interactive debugging John 2024-07-21 05:57:15 -0500
  • 9d7ab77999 cl-typeck: Add Handle type - Holds a DefID and a reference to the Project - Pretty-prints def signatures - Use handles when printing types (WIP) John 2024-07-21 05:45:40 -0500
  • 82b71e2517 cl-typeck: Refactor display for Def. John 2024-07-21 01:46:20 -0500
  • 46bd44bd99 cl-typeck: Re-name mod key to mod handle, in preparation for future handlization John 2024-07-20 18:30:05 -0500
  • 3511575669 conlang: Add array and slice type syntax John 2024-07-20 18:22:50 -0500
  • b3d62c09aa conlang: Self is not a type, it's a path to a type John 2024-07-17 15:05:52 -0500
  • ded100bf71 repline: Document the editor John 2024-07-12 16:40:32 -0500
  • c9ddebb946 cl-repl/menu: Revert extra newline in banner John 2024-07-11 04:44:01 -0500
  • 15c4b89bce cl-interpret: builtin.rs whitespace changes John 2024-07-11 04:43:25 -0500
  • aa7612926e cl-interpret: Add format builtin John 2024-07-11 04:42:36 -0500
  • fffc370380 sample-code: Expand the capabilities of the sample code John 2024-07-11 04:02:44 -0500
  • a646a9e521 cl-interpret: VERY rudimentary support for Const and Static John 2024-07-11 03:07:56 -0500
  • 5f57924f23 cl-repl: Perform module inlining before submitting code to the interpreter John 2024-07-11 02:50:15 -0500
  • d692f6bb80 cl-interpret: Complain, rather than panic, on outlined module John 2024-07-11 02:48:35 -0500
  • 58c5a01312 cl-structures: Clean up IndexMap and fix doctests John 2024-07-10 14:56:17 -0500
  • 16baaa32f1 sample-code: Add an example function to print a number in hexadecimal John 2024-07-09 06:16:25 -0500
  • 3c4d31c473 cl-repl: Run by default, break into menu John 2024-07-09 06:15:15 -0500
  • d723f7cece cl-interpret: String-building addition John 2024-07-09 06:14:44 -0500
  • b446677eda cl-interpret: Enforce wrapping behavior John 2024-07-09 06:13:55 -0500
  • 0beb121f32 cl-interpret: Change print to print without newline, add new println builtin John 2024-07-09 06:13:05 -0500
  • 6b16c55d97 cl-typeck: Fix doc list breakage John 2024-06-22 02:00:47 -0500
  • c16dbca55c cl-structures: Remove #[feature(inline_const)], stabilized in Rust 1.79 John 2024-06-22 01:59:01 -0500
  • 4c883d87a4 cl-ast: Link to [Meta] in [Attrs] John 2024-05-19 16:00:40 -0500
  • 1c3a56f5b5 misc: Fix broken doc links, remove "pool" from index_map.rs John 2024-05-19 15:32:57 -0500
  • 406bfb8882 cl-interpret: Stop kidding myself, I'll be replacing the interpreter before I get rid of this. John 2024-05-19 15:16:22 -0500
  • e0f54aea97 cl-structures: Mention IndexMap and MapIndex in the top level doc comment John 2024-05-19 15:12:54 -0500
  • fa8a71addc cl_structures: Rename deprecated_intern_pool to the more correct name "IndexMap" John 2024-05-19 14:51:14 -0500
  • 0cc0cb5cfb conlang: Remove "Identifier" node John 2024-05-19 14:41:31 -0500
  • f330a7eaa5 conlang: Split assignment into plain Assign and assign-with-Modify John 2024-05-19 14:31:30 -0500
  • 8d8928b8a8 conlang: Struct, tuple member accesses, member function call syntax John 2024-05-19 13:55:28 -0500
  • a033e9f33b conlang: Enable opt-level 1 in dev profile John 2024-05-16 15:07:54 -0500
  • be81221895 cl-typeck: Move type inference utils into own module John 2024-05-16 15:06:59 -0500
  • 33b7cd3971 cl-structures: Do not #[derive(Eq)] for Interned<T> John 2024-05-16 15:04:37 -0500
  • c9266d971f cl-typeck: Insert impls into target type's namespace John 2024-05-07 13:59:45 -0500
  • f76756e0e4 num.cl: Implement "overloaded" operator functions John 2024-05-07 13:32:58 -0500
  • a89f45aa58 cl-typeck: Add isize/usize primitives John 2024-05-04 23:07:57 -0500
  • d2eb165759 cl-arena: Add iterator allocation to TypedArena John 2024-05-04 22:17:34 -0500
  • edf175e53b cl-typeck: Add utilities for HM-style type inference via unification John 2024-05-04 22:12:33 -0500
  • 6aea23c8ba cl-ast/desugar: Turn all paths into absolute paths John 2024-04-29 16:25:30 -0500