Commit Graph

  • 65dc362a1d Killed some warnings, cleaned up some code greg 2017-02-02 11:33:07 -0800
  • 8ff1c632c2 Make REPL friendlier greg 2017-02-02 11:19:29 -0800
  • 039022bfc5 Get rid of println greg 2017-02-02 11:10:45 -0800
  • 387ec25cda Fix bugs in interpreter argument parsing greg 2017-02-02 02:12:28 -0800
  • ecf60198fa Can now switch between languages in the interpreter greg 2017-02-02 02:00:26 -0800
  • f83cece2b4 Import Maaru into main greg 2017-02-02 01:21:40 -0800
  • 8fd5fb5a0b Added language name functionality greg 2017-02-02 01:04:15 -0800
  • 455fe2abe2 Get rid of stand alone evaluator greg 2017-02-02 00:23:48 -0800
  • 902c85ccd7 Fully implemented state greg 2017-02-01 19:04:52 -0800
  • 4ea600d55c Abstracted most work into LanguageInterface trait greg 2017-02-01 02:15:18 -0800
  • 6dec35d460 Think I've nearly gotten it traitified correctly... greg 2017-01-31 00:53:31 -0800
  • cc855affbf Make Maaru structs public greg 2017-01-28 21:00:31 -0800
  • a303aa2a5b Add first new language - Maaru greg 2017-01-25 20:09:51 -0800
  • 421a9a7e9b Abstract evaluation into EvaluationMachine trait greg 2017-01-24 20:09:14 -0800
  • f37ab80163 Fix tests greg 2017-01-23 19:51:27 -0800
  • 178434171e Cleaning up some types greg 2017-01-23 19:45:26 -0800
  • fd4610e175 Make newtype for LLVM code strings greg 2017-01-23 19:11:50 -0800
  • 5103f03fa5 Forgot to add mod.rs file greg 2017-01-23 11:27:11 -0800
  • 1a4bf24ab1 Move schala-specific stuff into its own module greg 2017-01-23 03:03:12 -0800
  • 9d6bdf22da More conversions to trait version greg 2017-01-23 01:32:57 -0800
  • 8326a12c9c (Largely) trait-ify Schala greg 2017-01-23 00:03:08 -0800
  • 5e474231da ProgrammingLanguage types need Debug greg 2017-01-21 14:34:17 -0800
  • 1ac440c8df Implement trait parse greg 2017-01-21 14:32:03 -0800
  • f5022a771c Starting work to trait-ify language greg 2017-01-21 01:49:45 -0800
  • eaf86ea908 Add support for +, - in num literals greg 2017-01-19 19:44:43 -0800
  • eb6354e55a Only print errors if the programs failed greg 2017-01-18 03:21:09 -0800
  • 751c6f65bd Deleted some code in compilation greg 2017-01-18 03:19:15 -0800
  • 3e231b4715 Use native rust to write source file greg 2017-01-18 01:56:42 -0800
  • e103ba221c Conditionals work! greg 2017-01-17 19:48:25 -0800
  • d5f01a7b1f Continuing work on phi nodes greg 2017-01-17 10:41:50 -0800
  • 1702163478 Add flag for llvm greg 2017-01-16 02:47:05 -0800
  • bdd6f75cf6 Show/hide LLVM IR in REPL greg 2017-01-16 02:38:58 -0800
  • 2681dbc4f2 Add test for "a+4" being conterintuitive greg 2017-01-16 01:10:06 -0800
  • 9454fc6194 Add return statements to generated functions greg 2017-01-16 01:06:59 -0800
  • c8feaa9b57 Add logging of supplimental commands greg 2017-01-16 00:43:04 -0800
  • 518414ffd5 I was doing a wrong thing with creating vecs greg 2017-01-16 00:04:09 -0800
  • 06a5de6e32 Trying to debug this segfault greg 2017-01-15 23:43:24 -0800
  • dd4816624c Change name of project to Schala greg 2017-01-15 15:33:31 -0800
  • 748a85db02 Compiling functions half-works greg 2017-01-15 07:23:53 -0800
  • 8f2d9b900b Function codegen sorta works greg 2017-01-14 17:19:11 -0800
  • b9d1140264 Refactored op compilation code greg 2017-01-14 15:13:03 -0800
  • 7188a7d33e Clarified that we hardcode a "main" function greg 2017-01-14 15:02:34 -0800
  • 0c7099771f Comparison operator working greg 2017-01-14 02:52:52 -0800
  • afec7e829c There's some segfault happening in LLVMBuildUIToFP greg 2017-01-14 01:23:14 -0800
  • a6773d59bd Refactoring in compiling binops greg 2017-01-13 22:29:17 -0800
  • d804efdc5e Use BinOp type instead of strings greg 2017-01-13 20:05:17 -0800
  • 0ace370fc2 Tightened up REPL loop greg 2017-01-13 18:59:34 -0800
  • 1f50fcc620 Improvments to interpreter directives parsing greg 2017-01-13 17:53:23 -0800
  • d7181afa91 Few more linefeed-related changes greg 2017-01-13 12:10:02 -0800
  • 4eb7683f47 Move linefeed reader to struct greg 2017-01-12 22:43:26 -0800
  • b04a8f0092 Add back interpreter directives greg 2017-01-12 21:51:00 -0800
  • c50be58cd2 Moved from simplerepl to lineread crate greg 2017-01-12 20:56:23 -0800
  • 5911a07f4f Inline parsing of lambdas like half-works greg 2017-01-12 02:58:36 -0800
  • 26bc6e90f3 Lamba calls partially work greg 2017-01-12 01:33:34 -0800
  • b0655d7cab need to flush stdout for printing greg 2017-01-11 22:32:12 -0800
  • a46ede9395 Made evaluation-printing more sophisticated greg 2017-01-11 22:29:38 -0800
  • d9ab5a58cf Add some methods to llvm_wrap greg 2017-01-11 20:25:40 -0800
  • 77297c7e06 Add lambdas greg 2017-01-11 20:18:17 -0800
  • d93b5c0a2e Still cranking away at conditional compilation greg 2017-01-11 00:36:16 -0800
  • 0b9dc113d1 CLoser to working now greg 2017-01-10 18:07:16 -0800
  • d6fc13f08d Fix a couple of problems greg 2017-01-10 10:32:56 -0800
  • 825c271b17 More work on codegen for conditionals greg 2017-01-10 10:30:08 -0800
  • 8c4f7e141a Compiling if statements like half done greg 2017-01-10 03:33:02 -0800
  • 12fbc51da1 Compile multi-expression source programs greg 2017-01-10 01:34:08 -0800
  • db108ee434 Unicode should work greg 2017-01-10 00:11:32 -0800
  • 7ddb421ced Exit cleanly on opt parse fail greg 2017-01-09 22:56:29 -0800
  • 1631bb0a04 Fix tests for conditionals greg 2017-01-09 20:41:42 -0800
  • 5923cc2317 Kill then, else keywords greg 2017-01-09 20:34:14 -0800
  • 1fa56800c5 Convert parsing while, if, fn exprs to use { } greg 2017-01-09 20:33:08 -0800
  • 2b4d3e8516 Add support for curly braces and brackets greg 2017-01-09 20:06:31 -0800
  • 9b74527618 Control printing eval steps with flags greg 2017-01-09 04:26:42 -0800
  • d23e5bff35 Add an Op type for binop operators greg 2017-01-06 05:18:52 -0800
  • 3a4f5ae840 Change name Op -> OpTok greg 2017-01-06 04:56:00 -0800
  • 298194c42d Finish support for assignment operators greg 2017-01-06 00:58:47 -0800
  • 23d2209d8b Implementing a few more operators greg 2017-01-05 18:10:57 -0800
  • 4cf165b408 Use buffered reader for stdout greg 2017-01-05 04:39:31 -0800
  • 154839979b Add nicer handle_builtin method greg 2017-01-05 04:12:05 -0800
  • 6741787852 Update references in README greg 2017-01-05 04:01:12 -0800
  • 538f0b18f4 Evaluate while loop greg 2017-01-05 04:00:29 -0800
  • dc81d237c5 Reduce re-allocations in eval greg 2017-01-05 03:47:52 -0800
  • 8651839a66 Getting rid of some newlines - concision greg 2017-01-05 02:55:11 -0800
  • f6e5ea250d Convert while_expr to delimiter_block! too greg 2017-01-05 02:53:41 -0800
  • 9801f53a17 Moved conditionals to delimiter_block! syntax greg 2017-01-05 02:51:41 -0800
  • db92292569 Fixed all tests greg 2017-01-05 02:36:28 -0800
  • e1ce54aece Add delimiter_block macro greg 2017-01-05 02:20:23 -0800
  • c227ad656f Parser simplifications, renames, etc. greg 2017-01-05 01:58:22 -0800
  • b45d09e81a Don't need this reference greg 2017-01-04 19:32:06 -0800
  • 761500b9d6 Some cleanups in Parser greg 2017-01-04 19:30:44 -0800
  • e888e82404 Remove some unnecessary destructurings of Rc<String> greg 2017-01-04 16:56:17 -0800
  • 328ec4ba87 Convertd like half the Strings to RC greg 2017-01-04 04:18:55 -0800
  • 4a7b570603 Parser changes - add precedences, move definitions greg 2017-01-03 19:10:48 -0800
  • 7eb48fb4ef Working on compilation again greg 2017-01-03 03:27:28 -0800
  • 8ebf1b3056 Add parser support for while statements greg 2017-01-03 03:19:52 -0800
  • 905431b33c Change name: ASTNode -> Statement greg 2017-01-03 02:45:36 -0800
  • 2996198eff lookup_binding only needs &str greg 2017-01-03 02:41:22 -0800
  • 06771979df Function bodies can contain statements now greg 2017-01-03 02:11:59 -0800
  • f158b6c712 Converted to multiple-evaluator logic greg 2017-01-03 01:53:44 -0800
  • ba8f67441f Conditionals - handle delimiters correctly greg 2017-01-03 01:21:20 -0800
  • 872e9ce7ee Make function binding a SideEffect greg 2017-01-03 00:26:48 -0800
  • 2722533efd Prove recursion works greg 2017-01-02 23:39:18 -0800