Commit Graph

289 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
Mary Salehi e44daa8e2e Change the logo design 2021-03-27 15:51:16 +00: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 5c736b6c85 Add a white background to the logo 2021-03-21 16:50:44 +00:00
Sameer Rahmani cd0989d060 Update the builder and CMakefile to get ready for LLVM 13 2021-03-21 16:25:12 +00:00
Mary Salehi 23613b170c Change the logo font 2021-03-20 22:20:28 +00:00
Mary Salehi b9916d9fa9 Add the official serene logo and the historical logos 2021-03-20 21:34:59 +00:00
Sameer Rahmani 4fd85d8284 Update the dev.org from master 2021-03-19 14:00:45 +00:00
Sameer Rahmani 5974fb52cf Update the dev.org with completed TODOs 2021-02-22 16:38:49 +00:00
Sameer Rahmani 146e68670a Enable the golangci-lint in the CI 2021-01-25 19:18:35 +00:00
Sameer Rahmani f8d8256d29 Fix all the linting problems through out the bootstrap dir 2021-01-25 18:37:19 +00:00
Sameer Rahmani 23d397b94e Fix the linting issues on the core package 2021-01-25 17:50:33 +00:00
Sameer Rahmani 30669d9327 Fix linter issues on the parser module 2021-01-23 18:32:32 +00:00
Sameer Rahmani b650a10ba0 Fix linter issues in the numbers.go 2021-01-22 21:36:26 +00:00
Sameer Rahmani ea666bfa6a Fix linter problems in function.go and types.go 2021-01-22 21:27:51 +00:00
Sameer Rahmani 4216547dd3 Fix linter problems on on eval.go and some of other pkg/core 2021-01-22 21:19:41 +00:00
Sameer Rahmani 5882897375 Use --fix argument of linters to auto fix as many issue as possible 2021-01-22 20:39:06 +00:00
Sameer Rahmani 3f554445d8 Fix some the linters problems reported by the golang-cli 2021-01-22 20:37:44 +00:00
Sameer Rahmani fabb3cbb32 Fix some random linting issues 2021-01-21 22:52:18 +00:00
Sameer Rahmani 8bcf1ea566 Update the golangci location to be used only for the bootstrap 2021-01-18 18:07:48 +00:00
Sameer Rahmani b76ce4556b Merge pull request 'Add the config file for golangci-lint' (#7) from ryan/Serene:add-golangci-lint-config into master
Reviewed-on: Serene/Serene#7
2021-01-18 14:49:11 +00:00
Ryan Clark 1b2ecadb53
Add the config file for golangci-lint
This uses most of the settings from the default golangci-lint config,
but a few are changed after using it on my own projects. This will
require some codebase changes to get the linter to pass, but just adding
the config file for now.
2021-01-18 14:45:02 +00:00
Sameer Rahmani 3904d6ef74 Fix couple of linting problems 2021-01-15 20:48:56 +00:00
Sameer Rahmani 2d7a32bcf3 Remove the debug data on the Makefile 2021-01-15 18:56:10 +00:00
Sameer Rahmani d154f32079 Fix the build script to compile the bootstrap in a container 2021-01-15 18:52:09 +00:00
Sameer Rahmani 8546c1c562 Add the build target to the global make file 2021-01-15 18:34:41 +00:00
Sameer Rahmani 13f09e821f Change the Jenkins agent type to any 2021-01-15 18:31:41 +00:00
Sameer Rahmani e0c6960b6b Add jenkinsfile and makefiles to test it 2021-01-15 18:28:36 +00:00
Sameer Rahmani 09a6d92c08 Replace Tre/False types with a Bool type 2021-01-14 18:17:38 +00:00
Sameer Rahmani c88c7dad96 Fix some of styling issues through out ast and hash modules 2021-01-14 17:48:39 +00:00
Sameer Rahmani e26bc00f09 Document the location.go file 2021-01-12 19:01:41 +00:00
Sameer Rahmani 2f6f79fe35 Split up the ast.go into smaller files 2021-01-11 19:03:02 +00:00
Sameer Rahmani f2241cc31f [Bootstrap] Add E0003 and the MakeRuntimeError to cover for MakeError 2021-01-10 18:30:48 +00:00
Sameer Rahmani c30c93442b [Bootstrap] Update the printer functions to enhace the traceback visuals 2021-01-10 17:03:52 +00:00
Sameer Rahmani c2d4273319 [Bootstrap] Fix the order and location on the traceback
In order to fix this issue I had to make many minor tweaks
including reordering the traceback and the way we pass down
nodes.
2021-01-07 19:45:07 +00:00
Sameer Rahmani 0cc7646e3a Merge branch 'master' into semantic-analysis 2021-01-03 23:43:45 +00:00
Sameer Rahmani e4001e3802 [Bootstrap] Add a basic PrintError function to print error messages with the traceback 2021-01-03 23:42:49 +00:00
Sameer Rahmani 9be27c124a [Bootstrap] Use Serene itself to load and run the main function
This commit consist a series of fixes to make the reach the main
goal of the commit:

* Fix the 'MakeNodeFromExprs' behavior so it returns a pointer
  to a node and if the number of input exprs is zero then nil.

* Fix all the eval loop to return immediately in case of any error
  duh!

* Add a `errtype` field to `Error` with an `ErrType` enum type
  that indicates the type of the error, the type being syntax,
  semantic and runtime error at the moment.

* Rename some of the Error functions to match the error type. For
  Exapmle `MakeSyntaxError` and `MakeSemanticError`
2021-01-02 21:04:35 +00:00
Sameer Rahmani 6b3bf41a60 [Website] Add the deploy script to deploy the website 2021-01-02 18:16:46 +00:00
Sameer Rahmani 0f651c4a49 [Website] Add site/public to the gitignore 2021-01-02 17:21:24 +00:00