Commit Graph

709 Commits

Author SHA1 Message Date
Sameer Rahmani ce78534cd3 Add a function to compiler to compiler modules to string 2020-09-20 23:01:50 +01:00
Sameer Rahmani 40bcb3b16c Create 'def' special form to define global value ( not functions at the moment ) 2020-09-20 22:22:18 +01:00
Sameer Rahmani fe1724ce22 Finialize the Seq trait to return a copy of data instead of reference 2020-09-19 01:23:33 +01:00
Sameer Rahmani 298dc89025 Create a new list implementation based on vectors 2020-09-19 00:28:40 +01:00
Sameer Rahmani bb83142ffd Commit the old list implementation 2020-09-18 21:52:45 +01:00
Sameer Rahmani fa9c51e71c Change the list implementation to remove the generic type from it 2020-09-14 21:46:52 +01:00
Sameer Rahmani f880169e68 Change scope implementation to support values::Value 2020-09-13 22:06:05 +01:00
Sameer Rahmani 842309e035 Merge branch 'feature/new-links-for-dev-org' into master 2020-09-13 19:29:58 +01:00
Sameer Rahmani ee47410d49 Improve scope to support builtins 2020-09-13 19:29:17 +01:00
Hamid f780447838 Research links for JIT and GC 2020-09-12 18:26:27 +02:00
Sameer Rahmani b6a960862c Extract 'compile' function from compiler struct 2020-09-12 14:12:04 +01:00
Sameer Rahmani a6eb232b48 Change codegen function to accept compiler's reference 2020-09-12 12:34:08 +01:00
Sameer Rahmani 6a7523e0ba Change the codegen signature to accept compiler instead of ns 2020-09-11 20:55:26 +01:00
Sameer Rahmani 5c6635fd0c Clean up the scope struct to lookup in the parent as well 2020-09-10 23:28:20 +01:00
Sameer Rahmani 317726975c Add and setup rusty-hook 2020-09-09 21:53:25 +01:00
Sameer Rahmani 05a2886402 Make Serene GPLv2 compatible 2020-09-09 21:40:31 +01:00
Sameer Rahmani 03c15c5f25 Fix the compiler ns to have a very basic Compiler struct 2020-09-09 21:21:04 +01:00
Sameer Rahmani a8557125c4 Add the mapping for builtins special forms to namespace 2020-08-03 20:21:46 +01:00
Sameer Rahmani dfa64e8f26 Fix some of the hints from the 1on1 session on the refactoring the code 2020-08-03 12:39:20 +01:00
Hamid 18910a4a2c Refactoring 2020-08-02 22:08:35 +02:00
Sameer Rahmani f008470de3 Finish the basic implementation of the special form 2020-08-01 21:32:21 +01:00
Sameer Rahmani ff3bceac62 Change id attribute of AExpr to virtual method 2020-08-01 20:14:51 +01:00
Sameer Rahmani 1238898ddc Add a very basic 'def' special form 2020-08-01 19:58:34 +01:00
Sameer Rahmani b27611d5ba Create a very basic compiler setup to wire everything in the most basic way 2020-07-25 18:59:00 +01:00
Sameer Rahmani 6e36ce1711 Add the basic class structure of the compiler, namespace and state 2020-07-25 15:49:19 +01:00
Sameer Rahmani b442d5e83c Add setup target to builder script 2020-07-23 21:53:42 +01:00
Sameer Rahmani 90b39435b6 Commit the missing files related to coding style 2020-07-23 21:47:44 +01:00
Sameer Rahmani 2eda5f8d5f Setup clang-format as a githook and apply it to the source 2020-07-23 21:47:13 +01:00
Sameer Rahmani 8e90ea9813 Finish the first implementation of the compiler level list 2020-07-23 17:13:16 +01:00
Sameer Rahmani d55b4a27f5 Create the PoC of API of the List 2020-07-22 18:58:15 +01:00
Sameer Rahmani 576eba6451 Add a very basic List implementation 2020-07-21 22:23:11 +01:00
Sameer Rahmani cbea0c8e28 Add the first draft of a very basic reader, list and symbol impl 2020-07-16 15:48:06 +01:00
Sameer Rahmani edc9a3e52d Add parallel builds to the ninja 2020-07-10 21:00:14 +01:00
Sameer Rahmani 207e588d05 Add the build-release target to the builder 2020-07-10 20:55:37 +01:00
Sameer Rahmani 5668ef4d10 Add more subcommands to the builder 2020-07-10 20:41:46 +01:00
Sameer Rahmani 51b9f4a307 Add the build setup for the C++ implementation 2020-07-10 18:06:26 +01:00
Sameer Rahmani 72fb1f1a2c Commit the final changes before moving to C++ :( 2020-07-09 13:52:46 +01:00
Sameer Rahmani 402e267e7c Add basic namespace and scope support 2020-07-06 14:18:29 +01:00
Sameer Rahmani 04cadf7152 Add the julia paper to the list of resources 2020-06-27 22:22:37 +01:00
Sameer Rahmani 2756349204 Add a very basic Namespace datastructure 2020-06-27 22:12:09 +01:00
Sameer Rahmani 08a651019f Add Symbol struct to represent symbols 2020-06-20 22:14:48 +01:00
Sameer Rahmani 3454a44f65 Add inkwell to replace llvm-sys and add the types module 2020-06-20 22:02:17 +01:00
Sameer Rahmani 0b348cff82 Add clap to manage the cli arguments 2020-06-20 18:20:10 +01:00
Sameer Rahmani 2a98d4b771 Create Expr function helpers to create different Expr variants 2020-06-20 16:25:05 +01:00
Sameer Rahmani 0065c2edf1 Add Expression trait and new cons implementation 2020-06-20 15:20:05 +01:00
Sameer Rahmani 30a7dbfce5 Fix the reader to ignore comment lines 2020-06-19 19:37:00 +01:00
Sameer Rahmani 04fe7e6085 Add llvm-sys as a dependency 2020-06-16 09:27:32 +01:00
Sameer Rahmani 25c58c27c2 Format the reader module 2020-06-14 21:25:18 +01:00
Sameer Rahmani 5181c84696 Add support for negative numbers 2020-06-14 21:23:39 +01:00
Sameer Rahmani 47bf80e834 Add a very basic lisp1 parser 2020-06-14 21:02:31 +01:00