Sameer Rahmani
2298be5783
Update the Ep3 slides
2021-07-10 18:43:33 +01:00
Sameer Rahmani
9102085d83
Add the overview section to the videos doc
2021-07-10 17:52:53 +01:00
Sameer Rahmani
afa2310b02
Add the deck for episode 2 to videos.org
2021-07-03 16:52:57 +01:00
Sameer Rahmani
b4285a154c
Add the presentation for the first episode of the video series
2021-07-02 23:40:22 +01:00
Sameer Rahmani
3027880d98
Merge pull request 'Inside builder's setup subcommand, Inform developers to set CLANG_FORMAT_DIFF path manually.' ( #10 ) from pouya-abbassi/Serene:master into master
...
Reviewed-on: Serene/Serene#10
2021-06-30 10:29:24 +00:00
Pouya Abbassi
f7e7acdee0
Inside builder's setup subcommand, Inform developers to set CLANG_FORMAT_DIFF path manually.
2021-06-30 14:52:09 +04:30
Sameer Rahmani
cbb4f2a9bb
Merge pull request 'Check builder script against ShellCheck and fix warnings. Use ccache if available' ( #9 ) from pouya-abbassi/Serene:master into master
...
Reviewed-on: Serene/Serene#9
2021-06-30 10:11:33 +00:00
Pouya Abbassi
2831bce899
Merge branch 'master' of devheroes.codes:Serene/Serene
2021-06-30 13:43:27 +04:30
Pouya Abbassi
8b3ea84a7a
Check if ccache is installed then use it in build process
2021-06-30 13:41:35 +04:30
Sameer Rahmani
a041724efa
Add the link to the 20 part essay to linkers to the dev.org
2021-06-28 23:29:05 +01:00
Pouya Abbassi
130e57e189
Fix the warnings and compatibility issues of builder with ShellCheck
2021-06-28 22:59:18 +04:30
Sameer Rahmani
8c19a56203
Add support for compil to object file
2021-06-28 01:12:51 +01:00
Sameer Rahmani
a6254b0876
Lower the FnOp with the simplest possible impl
2021-06-25 23:09:46 +01:00
Sameer Rahmani
fc0c41e893
Connect the Fn expr with FnOp
2021-06-25 21:47:24 +01:00
Sameer Rahmani
098365425d
Add a very basic 'fn' operator to slir
2021-06-23 20:34:57 +01:00
Sameer Rahmani
7f7f49d3ac
Add Basic setup for lowering the llvm dialect to the LLVMIR
2021-06-21 11:03:18 +01:00
Sameer Rahmani
bd4dc2301c
Add the LIR phase to lower everything to the llvm dialect
2021-06-17 13:19:19 +01:00
Sameer Rahmani
ecedb14a12
Refactor the IR generation/dump process
2021-06-16 20:19:42 +01:00
Sameer Rahmani
cb9914f6eb
Fix the memory leak on Namespace
2021-06-15 01:21:48 +01:00
Sameer Rahmani
782c786baf
Reformat files with the new clang-format config
2021-06-13 22:58:46 +01:00
Sameer Rahmani
65b6aa4020
Add the IR generation facilities to Namespace and Expression
2021-06-13 22:40:58 +01:00
Sameer Rahmani
7e319ece13
Add the bare min pass to convert slir to std dialect
2021-06-11 22:06:44 +01:00
Sameer Rahmani
36eef7222f
Setup a very basic IR generation process
2021-06-09 13:29:14 +01:00
Sameer Rahmani
d52c6adc1d
Add SLIR missing files
2021-06-08 22:03:12 +01:00
Sameer Rahmani
616dca53fb
Add SLIR skeleton to start the generator
2021-06-08 22:01:08 +01:00
Sameer Rahmani
bfac2eff3f
Set fn name for functions via def
2021-06-01 20:47:46 +01:00
Sameer Rahmani
c21055716c
Fix some test cases related to call exprs
2021-05-24 21:17:33 +01:00
Sameer Rahmani
328c8c7e41
Fix the null reference issue in Call expr
2021-05-09 21:50:56 +01:00
Sameer Rahmani
0ce47a0b6a
Finish up the basic implementation of Call expr
2021-05-09 12:21:26 +01:00
Sameer Rahmani
f2049b5ae8
Use the locale DenseMapInfo for std::string
2021-05-08 21:52:37 +01:00
Sameer Rahmani
ff82772cd6
Implement a basic environment setup/lookup via 'def' and 'list'
2021-05-08 19:00:24 +01:00
Sameer Rahmani
bbf3bd3660
Clean up the unsed expr traits
2021-05-06 21:00:58 +01:00
Sameer Rahmani
fde6636ca2
Modify the Node and MaybeX to contain Serene's Error instead of llvm
...
Previously, MaybeNode and MaybeAST use to have the llvm::Error as the
error type. But after this change they will have a `vector` of
`serene::errors::Error` as the error type.
2021-05-06 19:17:57 +01:00
Sameer Rahmani
add3765982
Add necessary Traits to construct an Expression alternative
2021-05-04 21:10:52 +01:00
Sameer Rahmani
d0defdbf54
Add tests for MetaTrait concept
2021-05-03 22:45:35 +01:00
Sameer Rahmani
4040b1ff45
Add documentation to the traits.h
2021-05-02 01:07:04 +01:00
Sameer Rahmani
b121483f2b
Move the traits header to the appropriate place
2021-05-01 21:40:30 +01:00
Sameer Rahmani
179ef75793
Add A basic Trait like system using CRTP
2021-05-01 20:08:49 +01:00
Sameer Rahmani
2427c3a40b
Update the todo list in dev.org
2021-04-30 16:07:28 +01:00
Sameer Rahmani
6ce565163c
Add support for current namespace in the context
2021-04-29 23:39:58 +01:00
Sameer Rahmani
f2a76aa007
Add a minimal test case for namespace to pin down some behavior
2021-04-28 21:03:22 +01:00
Sameer Rahmani
33c6ebd3d3
Setup the ns table in the context class
2021-04-27 23:43:18 +01:00
Sameer Rahmani
66cecc77f3
Add the namespace table to the context
2021-04-26 21:29:44 +01:00
Sameer Rahmani
c1c1421531
Rename 'maybe_ast' type to 'MeybeAst'
2021-04-25 23:08:40 +01:00
Sameer Rahmani
32ddfc313f
Rename 'ast' type to 'Ast'
2021-04-25 23:07:08 +01:00
Sameer Rahmani
7bc9535617
Rename 'maybe_node' type to 'MaybeNode'
2021-04-25 23:05:21 +01:00
Sameer Rahmani
095d1872c1
Rename the 'node' type to 'Node'
2021-04-25 23:02:52 +01:00
Sameer Rahmani
0e58304462
Create the boilerplate of the call expression
2021-04-25 22:56:31 +01:00
Sameer Rahmani
c04c67ccbe
Add an environment implementation
2021-04-25 21:19:26 +01:00
Sameer Rahmani
f9bd6cd567
Add the missing context header/impl files
2021-04-25 10:21:48 +01:00