Commit graph

149 commits

Author SHA1 Message Date
Victor Olin
c05bf76662 Started testing the GC
Co-authored-by: ValterMiari <ValterMiari@users.noreply.github.com>
2023-02-15 16:57:11 +01:00
valtermiari
f8d761411d Some configurations 2023-02-15 10:42:27 +01:00
valtermiari
634050c094 Some small test features 2023-02-15 10:40:35 +01:00
Victor Olin
31bc719e74 Next up is tests
Co-authored-by: ValterMiari <ValterMiari@users.noreply.github.com>
2023-02-14 15:11:58 +01:00
Victor Olin
deed239879 Almost finished w/ 1st impl of GC 2023-02-14 11:48:04 +01:00
Victor Olin
7fd324a5b2 Almost finished with 1st impl of GC
Co-authored-by: ValterMiari <ValterMiari@users.noreply.github.com>
2023-02-14 11:47:52 +01:00
Samuel Hammersberg
7c1e1d57a0 Merge remote-tracking branch 'origin/main' into llvm_testing 2023-02-12 13:17:45 +01:00
Martin Fredin
3fe990ceaa Don't run interpreter by default 2023-02-12 13:01:12 +01:00
Samuel Hammersberg
818e57ff14 Updated main to use the updated Code Generator. 2023-02-11 14:14:21 +01:00
Samuel Hammersberg
5d5a610cca Made compiler state more generic, and compile no longer outputs IO and instead returns the result. 2023-02-11 14:12:27 +01:00
Martin Fredin
d67eddcf0f Fix interpreter 2023-02-11 11:04:39 +01:00
Martin Fredin
e212c79a44 Revert back to one lambda par, and fix issues with lambda lifter 2023-02-11 09:59:26 +01:00
Martin Fredin
f3600ffdf8 Fix documentation and small things 2023-02-10 16:45:33 +01:00
Martin Fredin
5956cdf121 Fix typo 2023-02-10 16:45:33 +01:00
Martin Fredin
8688b303ac Fix unnecessary supercombinator issue 2023-02-10 16:45:33 +01:00
Martin Fredin
ece621b0aa Fix auxiliary path 2023-02-10 16:45:33 +01:00
Martin Fredin
8663f2ea50 Some clean up and documenting 2023-02-10 16:45:33 +01:00
Martin Fredin
08917be1c6 Fix first unnecessary supercombinator 2023-02-10 16:45:33 +01:00
Martin Fredin
69254f8032 Finish Lambda Lifter 2023-02-10 16:45:33 +01:00
Martin Fredin
2a48b7477e Implement lambda lifting passes: freeVars, abstract, and rename 2023-02-10 16:45:33 +01:00
Martin Fredin
b64b49b1eb Remove files from git 2023-02-10 16:45:33 +01:00
Martin Fredin
61efcebc64 Fix conflict 2023-02-10 16:45:33 +01:00
Samuel Hammersberg
e7ef268c12 Splat LLVM Ir into its own file. 2023-02-10 16:08:45 +01:00
Victor Olin
f42ea42273 Goal for next week 2023-02-10 13:47:09 +01:00
Victor Olin
afd5463310 Worked a bit on the heap 2023-02-10 13:45:53 +01:00
Victor Olin
b6ca1781ea Started with a rough structure 2023-02-09 13:18:58 +01:00
Samuel Hammersberg
7a0ff5d708 Formatted and documented code. 2023-02-09 09:45:05 +01:00
valtermiari
fadb9eed0d A simple mark-sweep implementation 2023-02-08 14:10:16 +01:00
Samuel Hammersberg
dbbbc725ea Stuck at a conundrum 2023-02-06 16:49:29 +01:00
Samuel Hammersberg
721192c242 Started implemented multiple functions. 2023-02-06 15:44:54 +01:00
Victor Olin
7f464339bc init branch 2023-02-05 11:16:11 +01:00
Samuel Hammersberg
d41db9bbb8 Added some more to the comment of binExprToValues 2023-02-04 15:25:28 +01:00
Samuel Hammersberg
cd47f7dde3 renamed evalToValues to binExprToValues 2023-02-04 15:21:04 +01:00
Samuel Hammersberg
d779605814 Added the src/Grammar folder to the gitingore. 2023-02-04 15:12:32 +01:00
Samuel Hammersberg
66fb77c84e Added some missing math operators 2023-02-04 15:11:56 +01:00
Samuel Hammersberg
026949ae7e Added support for subtraction 2023-02-04 13:20:46 +01:00
Samuel Hammersberg
f8d320bb6d Heavily shorted down the emitAdd function, and added a emitInt function. 2023-02-04 12:43:47 +01:00
Samuel Hammersberg
57f8b6ba5b Optimized add even further. 2023-02-04 11:35:57 +01:00
Samuel Hammersberg
f9c5a520e3 Implemented addition. 2023-02-04 11:29:59 +01:00
Samuel Hammersberg
819f4c9406 Made a simple code generator that outputs to LLVM IR 2023-02-03 16:59:36 +01:00
Samuel Hammersberg
defe409d78 Added a comment about the includeStr "macro" 2023-01-24 11:43:54 +01:00
Samuel Hammersberg
fd64a7e669 Added a function to load the Standard LLVM library at runtime. 2023-01-24 11:38:33 +01:00
Samuel Hammersberg
213e47097e Split the compiler into it's own module and added a file for the LLVM standard library. 2023-01-23 16:57:32 +01:00
Samuel Hammersberg
b389e397b6 Started working on a simple compiler. 2023-01-22 19:43:08 +01:00
Samuel Hammersberg
df3bf7c6ab Added the missing Lex and Par file. 2023-01-22 19:42:14 +01:00
Martin Fredin
787dbd85db Add Makefile, add remove Grammar dir 2023-01-21 19:44:22 +01:00
Martin Fredin
499ced914c Fix judgment 2023-01-20 14:16:18 +01:00
Martin Fredin
64ee4dc432 Implement basic interpreted language 2023-01-20 14:12:04 +01:00
Martin Fredin
7caadcbeb9 Use src instead of app 2023-01-17 15:34:32 +01:00