Commit Graph

56 Commits

Author SHA1 Message Date
Sameer Rahmani f73cfe7aaf Introduce the new polymorphic approach to expressions 2021-04-05 19:02:30 +01:00
Sameer Rahmani 062b24e701 Add doxygen support for the documentation 2021-04-05 17:51:09 +01:00
Sameer Rahmani 9ff707c726 Save the progress before introducing the semantic analysis 2021-04-04 23:08:57 +01:00
Sameer Rahmani 53ec0c240a Change the different generator methods to be a polymorphic function 2021-04-01 23:37:12 +01:00
Sameer Rahmani f6ca246f0d Implement classof in derived expressions 2021-03-31 19:37:32 +01:00
Sameer Rahmani 3a899d82b3 Add Location and LocationRange support to expressions 2021-03-29 01:02:29 +01:00
Sameer Rahmani f50e20567a Move reader related files to the reader namespace 2021-03-28 23:14:32 +01:00
Sameer Rahmani e9daeb9d13 Add support for a dummy value operation to demonstrate a value 2021-03-28 10:53:32 +01:00
Sameer Rahmani 21b1958ecf Add symbol type to the dialect 2021-03-26 21:39:25 +00:00
Sameer Rahmani 50c2054f0a Add a barebone MLIR dialect with the necessary cmake changes" 2021-03-25 00:53:44 +00:00
Sameer Rahmani 737b6e1a41 Remove unused code to simplify the project to the bare min 2021-03-23 22:31:20 +00:00
Sameer Rahmani 04a50eb65b Update the serene executable to use llvm::cl and spit out the AST 2021-03-22 19:53:10 +00:00
Sameer Rahmani cd0989d060 Update the builder and CMakefile to get ready for LLVM 13 2021-03-21 16:25:12 +00:00
Sameer Rahmani 4fd85d8284 Update the dev.org from master 2021-03-19 14:00:45 +00: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
Sameer Rahmani e527beea5a Add a very simple lisp grammer based on LALRPOP (whitespace problem) 2020-06-13 17:55:27 +01:00
Sameer Rahmani f4e7387733 Add the instructions for dev env into README.org 2020-06-12 14:30:34 +01:00
Sameer Rahmani 1fed8429d1 Add a useful article about parser algorithms in details to the dev.org 2020-06-11 23:46:34 +01:00