Sameer Rahmani
|
3b6d165baa
|
Replace the shared_ptr in the node with a unique ptr
|
2021-04-17 00:18:13 +01:00 |
Sameer Rahmani
|
1330bad6fb
|
Add a new type alias for Result<shared_ptr<Expressoin>>
|
2021-04-14 21:59:22 +01:00 |
Sameer Rahmani
|
3223fc6944
|
Restructure the source tree to have tests and impl files in src
|
2021-04-13 13:53:12 +01:00 |
Sameer Rahmani
|
470f23acef
|
Short circute the 'analyze' method of expressions for now
|
2021-04-13 00:45:08 +01:00 |
Sameer Rahmani
|
8b4f2941cf
|
Add the Result type as an error wrapper type
|
2021-04-12 23:18:32 +01:00 |
Sameer Rahmani
|
f4c28ae722
|
Upgrade to C++17 for now
|
2021-04-11 18:36:00 +01:00 |
Sameer Rahmani
|
11df9a6d1d
|
Add some test cases for the reader
|
2021-04-11 15:13:10 +01:00 |
Sameer Rahmani
|
555e770c01
|
Finalize migration to new expression interface
|
2021-04-11 00:02:56 +01:00 |
Sameer Rahmani
|
e4b0823e49
|
Fall back to the OOP design and setup the test env
|
2021-04-10 15:36:16 +01:00 |
Sameer Rahmani
|
944efcd1a9
|
Finish up the single dispatcher
|
2021-04-08 23:41:52 +01:00 |
Sameer Rahmani
|
fd211653f2
|
Fix the expression instantiation
|
2021-04-08 19:59:47 +01:00 |
Sameer Rahmani
|
a42259d684
|
Add c++20 support flag to cmake
|
2021-04-07 19:56:54 +01:00 |
Sameer Rahmani
|
c1bec1ec99
|
Document the Expression type
|
2021-04-07 01:01:12 +01:00 |
Sameer Rahmani
|
cd6552960d
|
Fix the cmake file to use the new reader files
|
2021-04-06 19:13:24 +01:00 |
Sameer Rahmani
|
08e661c508
|
Rename the reader header files
|
2021-04-06 18:28:50 +01:00 |
Sameer Rahmani
|
e620d8dcb2
|
rename location.hpp to location.h
|
2021-04-06 18:24:05 +01:00 |
Sameer Rahmani
|
f1f77386ae
|
Finish up the new Expression implementation
|
2021-04-06 16:20:20 +01:00 |
Sameer Rahmani
|
0020f95a80
|
Setup tests via Catch2
|
2021-04-06 00:21:43 +01:00 |
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
|
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
|
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
|
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
|
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
|
c7c4876838
|
Initial Commit
|
2020-06-05 22:23:14 +01:00 |