Commit Graph

202 Commits

Author SHA1 Message Date
Felix Müller 3d3083c894 first functional state of syntax tree 2024-05-13 22:17:43 +02:00
Sven Vogel 02e7c2775b added better parser error messages 2024-05-13 16:13:49 +02:00
Ur Mom 9eba9d1437 fixed shift-reduce conflict 2024-05-13 13:45:22 +02:00
Felix Müller 0e5736e50c AST implementation WIP 2024-05-13 11:33:23 +02:00
Felix Müller bb474d75ad start of the syntax tree 2024-05-12 23:33:15 +02:00
Ur Mom 76558e89ed Merge branch '41-add-parser-rules-for-casts' of https://github.com/Servostar/gemstone into 41-add-parser-rules-for-casts 2024-05-12 22:55:03 +02:00
Ur Mom eccce505e5 -added Type-Cast
-added Reinterpret-Cast
2024-05-12 22:54:58 +02:00
Filleo 730248595e
Merge pull request #66 from Servostar/concept/ast-design
Concept/ast design
2024-05-12 21:28:53 +02:00
Sven Vogel 23968f7acc required C standard is C23
refactored logger function names to remove underscores
added function attributes
2024-05-10 15:09:52 +02:00
Sven Vogel 12a522b0e6 added missing free for child array 2024-05-10 13:51:23 +02:00
Sven Vogel 80888fdb8d added function for removing and detaching a node 2024-05-10 13:49:04 +02:00
Sven Vogel dd4d70829e added more documentation to AST header 2024-05-10 13:00:25 +02:00
Sven Vogel efeb482128 removed gc 2024-05-08 22:10:14 +02:00
Sven Vogel eac3b23432 Revert "added detach function"
This reverts commit 4322797eae.
2024-05-08 22:06:54 +02:00
Felix Müller abbbe59b08 added string.h in ast.c 2024-05-08 21:56:33 +02:00
servostar 2d411e3b7b
Merge branch 'concept/memory-safety' into concept/ast-design 2024-05-08 19:19:32 +00:00
Sven Vogel 4322797eae added detach function 2024-05-08 20:44:52 +02:00
Felix Müller f05ebf6ac2 added Self token
changed program rule
added rules for box
removed second assign
added storagequalifier
added typedefine
2024-05-08 15:51:30 +02:00
Sven Vogel 94efa65ed0 added test for graphviz 2024-05-08 13:49:06 +02:00
Filleo cd6ebc60ad
Merge pull request #58 from Servostar/39-add-parser-rule-for-functions
added function parser rules
2024-05-08 13:23:58 +02:00
Filleo 0c9c5f37b4
Merge pull request #55 from Servostar/37-add-parser-rule-for-while
added while parser rule
2024-05-08 13:20:16 +02:00
Felix Müller b8723bf83c removed empty lines 2024-05-08 13:18:34 +02:00
SirTalksalot75 743f8899f4
Merge branch 'parser-devel' into add-parser-rule-for-modules-import 2024-05-08 13:16:10 +02:00
Filleo e65761a64f
Merge branch 'parser-devel' into 39-add-parser-rule-for-functions 2024-05-08 09:32:25 +02:00
Filleo 03010bcf42
Merge branch 'parser-devel' into 37-add-parser-rule-for-while 2024-05-08 09:28:34 +02:00
Sven Vogel 565d50b639 added gc module 2024-05-07 15:24:42 +02:00
Sven Vogel 86c74f66c2 added mote syntax elements 2024-05-07 13:04:22 +02:00
Ur Mom 198c27f676 changed moduleimport in parser 2024-05-07 10:07:00 +02:00
Sven Vogel 0a54dd5783 Merge branch 'concept/ast-design' of github.com:Servostar/gemstone into concept/ast-design
merged local changes
2024-05-07 09:51:19 +02:00
servostar 0b832bf199
Merge branch 'concept/ast-design' into 47-add-tests 2024-05-07 07:48:12 +00:00
Felix Müller 08943e3e6e added function parser rules 2024-05-06 22:14:42 +02:00
Sven Vogel 02628a56d6 fixed shift reduce conflicts by removing epsilon functions 2024-05-06 16:41:23 +02:00
Felix Müller 5d155416b4 added while parser rule 2024-05-06 14:13:43 +02:00
Ur Mom 4ee6be3eb8 Changed Key for Function name 2024-05-06 12:09:58 +02:00
Ur Mom 6038241a1b initial commit for adding Module Import 2024-05-06 12:00:03 +02:00
servostar 96a50f4289
Merge branch 'parser-devel' into 40-add-parser-rule-for-calling-functions 2024-05-06 08:51:21 +00:00
servostar 07b3198c06
Merge pull request #51 from Servostar/36-add-parser-rule-for-if
36 add parser rule for if
2024-05-06 08:48:39 +00:00
servostar 4d7dcc4c73
Merge branch 'parser-devel' into 43-add-parser-rule-for-operators 2024-05-06 08:46:07 +00:00
Sven Vogel 03855c5ae6 added more AST elements 2024-05-06 10:32:05 +02:00
Sven Vogel 98c60aef16 added rule for branches 2024-05-05 21:51:51 +02:00
Sven Vogel 6f6b34792f function calls can now have more than 1 parameter list 2024-05-05 21:11:28 +02:00
Felix Müller a1c12f03db removed some empty lines 2024-05-05 21:05:37 +02:00
Sven Vogel c6d8651ab6 added debug statements 2024-05-05 16:31:55 +02:00
Sven Vogel 914935aafb added function to convert AST to graphviz diagram 2024-04-30 14:01:00 +02:00
Sven Vogel 970b45ac3c added less and greater operator 2024-04-30 11:51:59 +02:00
Sven Vogel 3e6469e239 added parser rule for function calling 2024-04-29 14:12:27 +02:00
Sven Vogel 7547331705 added rules for operators 2024-04-29 12:39:44 +02:00
Felix Müller 6de4196c0a created lexer rule for comments
deleted lexer rule for '#'
added parser rule for statement
sorted parser rules
2024-04-28 23:46:12 +02:00
Sven Vogel 897de1b8e1 fixed spelling mistake 2024-04-26 17:36:20 +02:00
Sven Vogel dd867db271 Added identifier lists 2024-04-26 17:30:22 +02:00
Sven Vogel 3c0a885186 added parser rules for declaration, assignment, definition 2024-04-26 16:53:41 +02:00
Ur Mom 72bba3278a updated main.c 2024-04-26 16:21:54 +02:00
SirTalksalot75 cebe5c5bf4
Merge pull request #32 from Servostar/main
Update for branch 4
2024-04-26 16:16:21 +02:00
Sven Vogel e918139f88 added recurse 2024-04-26 15:37:17 +02:00
SirTalksalot75 5f53d1dce4
Update main.c
changed indendation and declared and initialized yyin after file opening
2024-04-25 14:02:12 +02:00
Sven Vogel df927cf7d6 fixed flag error and made option nounistd in lexer depend on compiler used 2024-04-24 22:47:59 +02:00
Sven Vogel d673d1de0a removed dependency of unistd.h from lexer 2024-04-24 22:36:58 +02:00
Sven Vogel 501f6f1602 file name macro searches for last char instead of last string 2024-04-24 22:31:35 +02:00
Sven Vogel 4f5cf6408e added blueprint for AST library 2024-04-23 15:58:07 +02:00
SirTalksalot75 520520e576
Update main.c
moved atexit() to setup
2024-04-23 15:27:11 +02:00
SirTalksalot75 fafcb942e0
Update main.c
fixed typo, and changed close_file function
2024-04-23 14:38:30 +02:00
SirTalksalot75 dad9cbb93a
Update main.c
fixed typo
2024-04-23 14:32:00 +02:00
SirTalksalot75 7797595fef
Update main.c
added File Insertion through arguments
2024-04-23 14:25:49 +02:00
SirTalksalot75 67efb13fe4
Merge pull request #28 from Servostar/main
Branch update
2024-04-22 15:59:40 +02:00
SirTalksalot75 a85558e118
Update main.c
changed close_file Function
changed ERROR to PANIC
2024-04-22 14:01:18 +02:00
SirTalksalot75 05d603f7ac
Update main.c
added Function for file closing
2024-04-22 13:41:37 +02:00
SirTalksalot75 4976aeb22f
Update main.c
fixed typo
2024-04-22 12:57:49 +02:00
SirTalksalot75 6d249dd9ea
Update main.c
deleted fclose()
2024-04-22 12:54:20 +02:00
SirTalksalot75 6fca12df39
modified main.c
-added Error-message from Logging API.
-changed exit and moved after yyparse()
-added extern for file name
todo: make file name user input variable.
2024-04-22 12:53:48 +02:00
SirTalksalot75 1cfe9485e9
added case for missing input of file to main.c 2024-04-22 11:51:27 +02:00
Felix Müller cf810ca375 removed spaces 2024-04-22 11:45:50 +02:00
Felix Müller a0a91d6c78 added numbers to Ident token 2024-04-22 11:11:02 +02:00
Felix Müller 853bf09c96 changed Keyword for unsigned
added debug message for lexer
2024-04-22 10:43:33 +02:00
SirTalksalot75 e90cd80fbe
added prototype for File-reading to main.c 2024-04-21 22:48:29 +02:00
Sven Vogel f61317b123 removed unecessary header from log.h 2024-04-17 16:06:53 +02:00
Filleo 30ebbf51fa
Merge pull request #15 from Servostar/5-create-tokenizer
5 create tokenizer
2024-04-17 15:23:47 +02:00
Filleo 5a519ab8a7
Merge pull request #16 from Servostar/11-make-yyerror-use-error
added printing of the string of `yyerror` with `ERROR`
2024-04-17 15:23:30 +02:00
Felix Müller 1e33cc7965 added printing of the string of `yyerror` with `ERROR` 2024-04-17 15:03:21 +02:00
Felix Müller e8bfc348be removed sign in number tokenizer
pass floats and integer as strings
2024-04-17 09:12:29 +02:00
Felix Müller 7e06e5ade7 Merge branch '5-create-tokenizer' of https://github.com/Servostar/gemstone into 5-create-tokenizer 2024-04-16 19:58:02 +02:00
Felix Müller 74befb4edd added signs to integer
removed linebrakes
added floats as "real"
changed Keyword for single symbol Operators
2024-04-16 19:54:09 +02:00
Filleo c18131fa90
Merge branch 'main' into 5-create-tokenizer 2024-04-15 22:22:57 +02:00
Felix Müller 0740dcc237 deleted test code and files 2024-04-15 22:11:20 +02:00
Felix Müller 866d3d03c1 forgor one file 2024-04-15 22:04:21 +02:00
Felix Müller d9f959f400 completed all keywords and symbols in base language.
created keywords for strings and multiline strings.
2024-04-15 22:02:53 +02:00
Felix Müller 59da185baf all Keywords from primitives til modules 2024-04-15 21:12:17 +02:00
Felix Müller 46de25f8ce first batch of keywords and symbols 2024-04-15 20:36:13 +02:00
Sven Vogel 9340812a49 fixed windows path separator 2024-04-15 10:26:15 +02:00
Sven Vogel 2b46c9e3ab added custom define for macro `__FILE_NAME__` for non supporting compilers 2024-04-14 17:09:28 +02:00
servostar 8bd4898440
Merge pull request #12 from Servostar/8-add-github-action-for-code-check
8 add GitHub action for code check (#12)
reviewed by @flixm16 @SirTalksalot75
2024-04-14 13:54:33 +00:00
Sven Vogel 376837d37c fixed comment typ in lexer 2024-04-12 22:55:03 +02:00
Sven Vogel b0ecb5d459 disable generation of unput() and input() in lexer to avoid code check fail 2024-04-12 22:52:32 +02:00
Sven Vogel 98c69026ba fix intentional typo in main.c 2024-04-12 22:51:56 +02:00
Sven Vogel 0079de6faf added compilation error for testing action 2024-04-12 18:59:35 +02:00
Sven Vogel 95f6b4ddc1 fixed warnings in main.c regarding whiteapace and declaration of main 2024-04-12 18:20:18 +02:00
Sven Vogel 488acc9b1f removed macro for max backtrace frames 2024-04-12 17:37:48 +02:00
Sven Vogel c1d19ed0a8 added handling of registering a NULL stream for logging 2024-04-12 17:36:13 +02:00
Sven Vogel 949bbb185a added documentation to sys/log.h 2024-04-12 17:34:38 +02:00
Sven Vogel 667f985d30 added documentation to main.c 2024-04-12 17:29:39 +02:00
Sven Vogel 4f30e6308d added function for notifying about exit 2024-04-12 17:28:20 +02:00
Sven Vogel f90ee70a8d added sys/log module and setup function 2024-04-12 17:24:12 +02:00
Sven Vogel 9c02a86a51 added canonical project structure 2024-02-04 16:23:32 +01:00