Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
416 commits
Select commit Hold shift + click to select a range
003bd96
feat(vm): number cast and list lenght
abeldaverio Oct 26, 2025
85a1a9b
Merge pull request #53 from PierrePruvost03/virtual-machine-builtin-a…
abeldaverio Oct 26, 2025
f26c1e1
feat(Ast): trait parsing
abeldaverio Oct 26, 2025
d8085ae
feat(Ast): parse functions as expression to accept lamba calling
abeldaverio Oct 26, 2025
b71e35c
feat(ast): parsing access var as expression
abeldaverio Oct 26, 2025
5c30f75
feat(compiler): handle array, vec, tuple, struct modification
eto-NaN Oct 26, 2025
25dd69b
fix(compiler): push val in list in reverse order (like everything else)
eto-NaN Oct 26, 2025
525f90b
merge: traits implementation into merge all parts branch
eto-NaN Oct 26, 2025
2d1cd9e
feat(compiler): parsing changes implemented (function are now variables)
eto-NaN Oct 27, 2025
8059d00
fix(parsing): apply skip to all type of declaration (was applied only…
eto-NaN Oct 27, 2025
8285530
feat(complier): Access to struct, vec, tuple, array managed
eto-NaN Oct 27, 2025
4caffca
feat(bytecode): push and pop on lists
abeldaverio Oct 27, 2025
ccd8eee
fix: merge with merge all parts
abeldaverio Oct 27, 2025
48b2fdd
feat: moving old README into ListInterpreter. New user's README must …
PoloTheAspicot Oct 27, 2025
18bc4c7
feat(vm): show value instance
abeldaverio Oct 27, 2025
d03bc0d
fix: loops and if statements now working
sami-hmr Oct 27, 2025
78df561
fix(vm): error on list set
abeldaverio Oct 27, 2025
c9931b3
Merge branch 'abeldaverio/gla-41-line-count-in-the-ast' of github.com…
sami-hmr Oct 27, 2025
56a0e73
fix(vm): error on list set
abeldaverio Oct 27, 2025
c5da230
Merge branch 'abeldaverio/gla-41-line-count-in-the-ast' of github.com…
sami-hmr Oct 27, 2025
713f8e2
fix: float parsing now calling before ints
sami-hmr Oct 27, 2025
d155fe4
fix: AVarCall not checking if var is in env
sami-hmr Oct 27, 2025
1a579b8
merge: Execution update into merge all parts
eto-NaN Oct 27, 2025
64efbb3
merge: if/loop updates
eto-NaN Oct 27, 2025
282b5bf
fix(compiler): extend scope with the function own declaration
eto-NaN Oct 27, 2025
bc62e87
feat(Ast): line count in the ast
abeldaverio Oct 27, 2025
756b171
feat: all dev READMEs' created and filled with some basic content
PoloTheAspicot Oct 27, 2025
d37fc39
fix(compiler): add function to its own scope
eto-NaN Oct 27, 2025
9eca3d3
fix(ci/cd): remove some checs that cannot success
eto-NaN Oct 28, 2025
d8b8052
fix(ci/cd): remove tests that cannot be succeed
eto-NaN Oct 28, 2025
a6937b5
Merge pull request #60 from PierrePruvost03/pierrepru03/gla-36-merge-…
eto-NaN Oct 28, 2025
7e02a42
feat: setting up all files requiered to implement the future standard…
PoloTheAspicot Oct 28, 2025
61845f6
feat(compiler): inkludes implemented
eto-NaN Oct 28, 2025
5f28d97
feat(AST): reference parsing
abeldaverio Oct 29, 2025
bb2d806
feat(AST): kast parsing
abeldaverio Oct 29, 2025
1f34c59
feat(compiler): manage references
eto-NaN Oct 29, 2025
aeb6b2f
feat: merge reference and kasts with linecounts
abeldaverio Oct 29, 2025
1714a34
merge(compiler): kast implementation on parsing
eto-NaN Oct 29, 2025
c647d81
feat(compiler): kast implementation
eto-NaN Oct 29, 2025
d41e5ae
merge(compiler): dev
eto-NaN Oct 29, 2025
7f75a22
feat(astParsing): add fatal error handlers for missing vector/array s…
LixiosDelios Oct 29, 2025
7af8493
feat(astParsing): enhance error handling in `parseStruct` with fatal …
LixiosDelios Oct 29, 2025
32c2dd9
feat(astParsing): add fatal error handling for missing wrapper closin…
LixiosDelios Oct 29, 2025
dc8afe7
Merge pull request #62 from PierrePruvost03/pierrepru03/gla-32-compiler
eto-NaN Oct 29, 2025
ec56bc2
refactor(main, astParsing): streamline error handling and simplify fu…
LixiosDelios Oct 29, 2025
07823ab
feat(astParsing): add fatal error handler for invalid `parseLineExpre…
LixiosDelios Oct 29, 2025
d449634
Merge remote-tracking branch 'origin/dev' into alexandreguillaud/gla-…
LixiosDelios Oct 29, 2025
5119221
refactor(main, astParsing): unify parsing error handling with `printP…
LixiosDelios Oct 29, 2025
af459de
Merge pull request #63 from PierrePruvost03/alexandreguillaud/gla-39-…
eto-NaN Oct 29, 2025
e856d4f
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Oct 29, 2025
beefe7a
feat(astParsing): adjust `parseWhile` to handle skipped symbols for i…
LixiosDelios Oct 29, 2025
3662f4b
feat: adding step by step math lib funktions
PoloTheAspicot Oct 29, 2025
64e8a18
fix(operations): divOp didn't divide correctly
PoloTheAspicot Oct 29, 2025
f278e4b
feat: adding most of math lib functions
PoloTheAspicot Oct 29, 2025
3a629c4
feat: ceil and floor functions
PoloTheAspicot Oct 29, 2025
f256bb0
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Oct 29, 2025
4eaa5f5
fix: adding powf with exponent lesser than 0
PoloTheAspicot Oct 29, 2025
b629162
feat: round funktion
PoloTheAspicot Oct 29, 2025
a24fd68
feat: isLower std lib
PoloTheAspicot Oct 29, 2025
e0f7f05
feat: isUpper std lib
PoloTheAspicot Oct 29, 2025
117496e
feat: isAlpha std lib
PoloTheAspicot Oct 29, 2025
3219437
feat: isDigit std lib
PoloTheAspicot Oct 29, 2025
3476173
feat: toLower using isUpper from std lib
PoloTheAspicot Oct 29, 2025
51c18b5
feat: toUpper using isLower from std lib
PoloTheAspicot Oct 29, 2025
d434c26
merge(compiler): line count added to Ast now displayed on compiler error
eto-NaN Oct 29, 2025
64f6b5e
feat: isAlphaNum std lib
PoloTheAspicot Oct 29, 2025
08d748b
Merge pull request #69 from PierrePruvost03/pierrepru03/gla-47-add-li…
eto-NaN Oct 29, 2025
bf84446
fix(compiler): when a array/vector is initialized with no value, comp…
eto-NaN Oct 30, 2025
a75dde5
feat: when a user include a file, he has to write the path of the fil…
eto-NaN Oct 30, 2025
7c4e379
fix: when a function requested in inklude doesnt exists, raise an err…
eto-NaN Oct 30, 2025
10aad69
Merge pull request #74 from PierrePruvost03/pierrepru03/gla-50-includ…
eto-NaN Oct 30, 2025
b0e21fb
merge(compiler): dev
eto-NaN Oct 30, 2025
c8241be
fix(compiler): unit tests updated with new updates on compiler (linec…
eto-NaN Oct 30, 2025
b2ca334
tests(compiler): unit tests on error cases and builtin/syscall
eto-NaN Oct 30, 2025
b3df8d2
fix(compiler): remove unused import
eto-NaN Oct 30, 2025
eeb2cc0
refactor(astParsing): remove unused exports from `BaseParsing` to sim…
LixiosDelios Oct 30, 2025
0744580
Merge remote-tracking branch 'origin/dev' into dev
LixiosDelios Oct 30, 2025
deb4a79
feat(tests): add comprehensive unit tests for `BaseParsing` module to…
LixiosDelios Oct 30, 2025
b8244c2
fix: use printParsingResult like before (merge error)
eto-NaN Oct 30, 2025
748d6df
refactor(astParsing): reformat `BaseParsing` module for improved read…
LixiosDelios Oct 30, 2025
4b8cb4d
fix: string parsing
abeldaverio Oct 30, 2025
154d3bb
fix(tuples): pipes parsed as infix
sami-hmr Oct 30, 2025
fca29ce
fix: gitignore
sami-hmr Oct 30, 2025
3717508
feat(compiler): error cases checked for references (cant take a temp …
eto-NaN Oct 30, 2025
bf267a5
feat(compiler): error cases on funtion return (wrong return type, mis…
eto-NaN Oct 30, 2025
514e6db
test: functionnal tests for + method
sami-hmr Oct 30, 2025
85c3b55
tests(workflows): fix functionnal tests
sami-hmr Oct 30, 2025
59751a1
fix: functionnal tests in another workflow
sami-hmr Oct 30, 2025
06fc3c8
fix: tmp folder
sami-hmr Oct 30, 2025
8a8ec1a
fix: rm glados binary with rm -rf
sami-hmr Oct 30, 2025
35c3f1f
chore: putting files in sub folder + adding caps to boolean
PoloTheAspicot Oct 30, 2025
cad72c4
feat(compiler): error cases on struct/array/vec/tuple invalid access
eto-NaN Oct 30, 2025
aa71ecd
feat(compiler): check duplicate symbol between 2 files compiled together
eto-NaN Oct 30, 2025
34c7e32
feat(compiler): div and modulo by zero, overflow, invalid cast and Ko…
eto-NaN Oct 30, 2025
a6446c9
feat(compiler): error cases on invalid arg number, operations/compara…
eto-NaN Oct 30, 2025
d4565d4
tests: more functionnal tests
sami-hmr Oct 30, 2025
abcc88e
feat(compiler): error cases on uninitialized variable, duplicated var…
eto-NaN Oct 30, 2025
350d53e
Merge pull request #75 from PierrePruvost03/functionnal_tests
eto-NaN Oct 30, 2025
caf8650
fix(compiler): remove warnings (shadow bindings)
eto-NaN Oct 30, 2025
e036b75
fix(ci/cd): remove useless checks
eto-NaN Oct 30, 2025
61ee1c7
merge(compiler): dev
eto-NaN Oct 30, 2025
971cbbc
feat(mod): modulus operation
sami-hmr Oct 30, 2025
5a2c892
Merge pull request #76 from PierrePruvost03/pierrepru03/gla-32-compiler
eto-NaN Oct 30, 2025
24aa778
Merge pull request #77 from PierrePruvost03/modulo
sami-hmr Oct 30, 2025
0ab3dc9
chore: files in sub folders and merging
PoloTheAspicot Oct 30, 2025
6434aba
fix: resolving merge issue with div
PoloTheAspicot Oct 30, 2025
99f14b0
fix: always assigning variables when decalred
PoloTheAspicot Oct 30, 2025
8003e2e
refactor(tests): simplify `BaseParsingTest` by consolidating assertio…
LixiosDelios Oct 30, 2025
8dabdaa
refactor(compiler): Unwrap module with generic unwrap/getLineCount fu…
eto-NaN Oct 31, 2025
026aa2f
refactor(compiler): Reorganize modules into Type subdirectory to avoi…
eto-NaN Oct 31, 2025
b769c29
refactor(compiler): Move bytecode generation modules into BytecodeGen…
eto-NaN Oct 31, 2025
273d5da
refactor(compiler): integrate TypeError into CompilerError and pretti…
eto-NaN Oct 31, 2025
4e28db6
refactor(compiler): remove duplicated functions with a Utils file
eto-NaN Oct 31, 2025
e24775f
refactor(compiler): move Expr utils function in Helpers.hs to shorten…
eto-NaN Oct 31, 2025
e700b6c
refactor(compiler): shorten huge functions by functions splits
eto-NaN Oct 31, 2025
5c2e625
refactor(compiler): shorten Program.hs and Block.hs by extract functi…
eto-NaN Oct 31, 2025
b282ef6
fix(ci/cd): ensure github environment is using bash to run lispInterp…
eto-NaN Oct 31, 2025
0646d99
merge(compiler): dev
eto-NaN Oct 31, 2025
7acbf94
fix(compiler): check konst modification, duplicate struct/variable. a…
eto-NaN Oct 31, 2025
31aba4a
fix(compiler): check type mismatch, != 2 args on logical ops
eto-NaN Oct 31, 2025
f349f52
fix(DataStruct): logical ops are && and ||
eto-NaN Oct 31, 2025
aaf6715
tests(compiler): add many error cases tests and some working function…
eto-NaN Oct 31, 2025
d4c2b86
fix(compiler): inferType returned only the return type of a function …
eto-NaN Oct 31, 2025
07a63ad
tests(compiler): remove wrong test
eto-NaN Oct 31, 2025
1660113
refactor(compiler): remove duplicated code.
eto-NaN Oct 31, 2025
7c63796
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Nov 1, 2025
0e29673
Merge pull request #79 from PierrePruvost03/pierrepru03/gla-32-compiler
PoloTheAspicot Nov 1, 2025
7a22128
Multiple Ifs with Returns instead in Elifs
PoloTheAspicot Nov 1, 2025
6294afa
Merge pull request #81 from PierrePruvost03/paulberlioz/gla-38-develo…
PoloTheAspicot Nov 1, 2025
d82023c
fix(parsing): method call has to send in ast type
eto-NaN Nov 1, 2025
d5157d3
feat(compiler): basic traits implementation
eto-NaN Nov 1, 2025
72ec29c
feat(ast): adding refs to trait self
abeldaverio Nov 1, 2025
aa4c1a1
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Nov 1, 2025
8ab902c
fix: merge
abeldaverio Nov 1, 2025
711931f
Merge branch 'paulberlioz/gla-42-standard-library' of github.com:Pier…
PoloTheAspicot Nov 1, 2025
b6643a5
fix(parsing): allow Traits to be references
eto-NaN Nov 1, 2025
efb4534
feat(compiler): default traits implemened (vec -> pop, push, len | ar…
eto-NaN Nov 1, 2025
7fd29e4
feat(VM): builtin trait implementation for push pop and len
abeldaverio Nov 1, 2025
a8f5661
fix: get len of unstored list
abeldaverio Nov 1, 2025
992abfb
feat: handle unsigned and long types
eto-NaN Nov 1, 2025
825658c
fix: compilation flag to avoid warning for no export list
eto-NaN Nov 1, 2025
4835676
Merge pull request #78 from PierrePruvost03/paulberlioz/gla-42-standa…
eto-NaN Nov 1, 2025
61c5951
refactor(ci/cd): full_project run only if push/pr to main. If succeed…
eto-NaN Nov 1, 2025
3e3ee1c
merge: dev
eto-NaN Nov 1, 2025
ca9ee99
fix(compilation): rename binaries (had the same name
eto-NaN Nov 1, 2025
cf0bc5a
feat(ci/cd): automatic release en tag push
eto-NaN Nov 1, 2025
1a2e21c
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Nov 1, 2025
877104e
fix(ci/cd): checks right binaries (binairies renamed in a previous co…
eto-NaN Nov 1, 2025
0527333
merge(compiler): dev updates
eto-NaN Nov 1, 2025
91b3755
fix(ci/cd): Kong and lisp tests wont run on pr/push to main cause ful…
eto-NaN Nov 1, 2025
66f5f2a
fix(ci/cd): kong and lisp checks wont run on pr/push to main (checked…
eto-NaN Nov 1, 2025
1a4e302
fix: binaries were renamed in makefile
eto-NaN Nov 1, 2025
1189d90
feat: incr before operation
abeldaverio Nov 1, 2025
d870e3c
fix: merge
abeldaverio Nov 1, 2025
d62aa76
refactor(main): move helpers functions to src to keep a Main.hs lite
eto-NaN Nov 1, 2025
15d6b0e
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Nov 1, 2025
3a628a0
feat: ++ function but not known by compiler
abeldaverio Nov 1, 2025
5175b4a
merge: compiler updates into sugar synthax
eto-NaN Nov 1, 2025
d51c43c
feat(compiler): ++ builtin function added to default env
eto-NaN Nov 1, 2025
c8a8c61
feat: binary writing and binary execution
abeldaverio Nov 1, 2025
d99376b
fix: VM tests
abeldaverio Nov 1, 2025
6ce6183
fix: remove coverage files
abeldaverio Nov 1, 2025
4774830
Merge pull request #84 from PierrePruvost03/syntax-sugar-operations
eto-NaN Nov 1, 2025
84ae448
chore: using True and False with caps. Using || and && operator in th…
PoloTheAspicot Nov 1, 2025
378b969
feat: adding khar lib to documentation
PoloTheAspicot Nov 1, 2025
84515f5
fix: merge
abeldaverio Nov 1, 2025
f274c53
feat(compiler): handle Empty vector/aray initialization + dynamic vec…
eto-NaN Nov 1, 2025
4c13f83
merge: dev updates
eto-NaN Nov 1, 2025
65442ad
Merge branch 'dev' into pierrepru03/gla-32-compiler
abeldaverio Nov 1, 2025
8d55321
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Nov 1, 2025
cea670a
fix: merge
abeldaverio Nov 1, 2025
5f33f3f
fix(compiler): remove warning (redundant pattern match)
eto-NaN Nov 1, 2025
b1fb768
merge(compiler): dev
eto-NaN Nov 1, 2025
7a360ba
fix(functionnal tests): binaries names
sami-hmr Nov 1, 2025
25d8d34
Merge branch 'pierrepru03/gla-32-compiler' of github.com:PierrePruvos…
sami-hmr Nov 1, 2025
eb518ea
fix(compiler): remove warnings (unused imports)
eto-NaN Nov 1, 2025
bc4dd36
merge(compiler): functionnal tests updates
eto-NaN Nov 1, 2025
e96ed1e
fix: parse float as Double and not Float to avoid wrong inprecision i…
eto-NaN Nov 1, 2025
2c25e58
tests: update expected result on floating operation due to a previous…
eto-NaN Nov 1, 2025
c917565
Merge pull request #82 from PierrePruvost03/pierrepru03/gla-32-compiler
eto-NaN Nov 1, 2025
2de17d3
fix(compiler): remove warning (useless function call)
eto-NaN Nov 1, 2025
caab639
fix(parsing): True and False are parsed with uppercase first letter
eto-NaN Nov 1, 2025
a240599
feat(astParsing): enhance `parseFor` to support wrapped `AExpress` ex…
LixiosDelios Nov 1, 2025
d92ecf5
fix: fatal that was procking on parenteses wrapp expression
abeldaverio Nov 1, 2025
44fae8d
feat(compiler): value stored in struct/list/vec/tuple are mutable by …
eto-NaN Nov 1, 2025
2d96dba
merge(compiler): dev updates
eto-NaN Nov 1, 2025
c2d37e7
fix(compiler): AAccess can be treated as ref
eto-NaN Nov 1, 2025
5206fc8
fix(compiler): loadRef after an assignement to ensure the value retur…
eto-NaN Nov 2, 2025
31354c1
fix: calling function update stack by replacing it by returned stack
abeldaverio Nov 2, 2025
8b13277
fix(vm): preserve the allocations to avoid pending references
eto-NaN Nov 2, 2025
ab57653
fix(compiler): Send the right type to method name
eto-NaN Nov 2, 2025
2b6c6a0
fix(compiler): resolve right which type are needed in initialization,…
eto-NaN Nov 2, 2025
8d656ad
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Nov 2, 2025
ce28d1b
feat(vm): argv management
abeldaverio Nov 2, 2025
e15e6f2
feat(astParsing): extend `parseFor` to support `parseDeclaration` for…
LixiosDelios Nov 2, 2025
2e2728c
feat: making sqrt funktion better faster and with fewer error cases
PoloTheAspicot Nov 2, 2025
e03cbe7
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Nov 2, 2025
a4bf549
feat(compiler): syscall typed
eto-NaN Nov 2, 2025
6a38624
fix(vm): syscalls handle that String are vectors of ref
eto-NaN Nov 2, 2025
33e6e8e
fix(compiler): remove warnings (unused)
eto-NaN Nov 2, 2025
b0b9263
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Nov 2, 2025
f03f3ac
fix(VM tests): compilation
abeldaverio Nov 2, 2025
682bad6
fix: remove warnings
eto-NaN Nov 2, 2025
f5267c4
fix(compiler): vector length validation and type inference on base li…
abeldaverio Nov 2, 2025
d56af70
fix: merge
abeldaverio Nov 2, 2025
8416e74
fix: unused value
abeldaverio Nov 2, 2025
d1b3f4e
fix(compiler): loop jumped one extra instruction making crash VM
eto-NaN Nov 2, 2025
0e4c0a5
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Nov 2, 2025
a9822b2
fix(compiler): removing type inference on push and pop function on ar…
abeldaverio Nov 2, 2025
91d7502
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Nov 2, 2025
7f7828d
tests(compiler): remove outdated tests (we dont check anymore vector …
eto-NaN Nov 2, 2025
f0d57e5
feat: -h flag to display help message
eto-NaN Nov 2, 2025
12dd81f
feat(astParsing): add `parseTypeDef` to handle type alias parsing
LixiosDelios Nov 2, 2025
a7d3e8a
feat(astParsing): enhance `parseTypeDef` to enforce end-of-declaratio…
LixiosDelios Nov 2, 2025
04fa5ec
tests: functionnal tests for vectors, arrays, tuples and references
sami-hmr Nov 2, 2025
fea446c
feat: readme explaining how to run functionnal tests
sami-hmr Nov 2, 2025
c5d9f81
feat: alias handled
eto-NaN Nov 2, 2025
f6024a9
tests(compiler): remove outdated test (typealias is no longer an unsu…
eto-NaN Nov 2, 2025
a4b270d
merge: dev updates
eto-NaN Nov 2, 2025
58368f8
Merge pull request #87 from PierrePruvost03/alexandreguillaud/gla-51-…
eto-NaN Nov 2, 2025
cde0052
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Nov 2, 2025
540eb7b
Merge pull request #89 from PierrePruvost03/alexandreguillaud/gla-52-…
eto-NaN Nov 2, 2025
49cb69e
fix(compiler): syscall write take an int and a Char as parameter not …
eto-NaN Nov 2, 2025
8c0a2cd
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Nov 2, 2025
bfe6c5a
feat: function type have to be wrapped into parenteses so we can put …
abeldaverio Nov 2, 2025
8360911
fix: merge
abeldaverio Nov 2, 2025
98cf907
fix(compiler): display error message without linecount on type
eto-NaN Nov 2, 2025
58026ec
fix: comparing vectors for return type or assignement does not care a…
abeldaverio Nov 2, 2025
06ed1fb
fix: merge
abeldaverio Nov 2, 2025
5eaeb3d
fix: possibility of signing expression
abeldaverio Nov 2, 2025
0b20d12
tests: functionnal tests for if and traits
sami-hmr Nov 2, 2025
43b4e7d
fix: printing char without quotes
abeldaverio Nov 2, 2025
4f28858
Merge branch 'dev' of github.com:PierrePruvost03/Glados into paulberl…
PoloTheAspicot Nov 2, 2025
6914aeb
fix: strings tests
sami-hmr Nov 2, 2025
4403e44
feat: String operations putstr and pustrln
PoloTheAspicot Nov 2, 2025
586291c
Merge pull request #85 from PierrePruvost03/paulberlioz/gla-42-standa…
eto-NaN Nov 2, 2025
b3c4327
feat(parser): support escape sequence parsing in `parseChar` and rela…
LixiosDelios Nov 2, 2025
5d4791a
merge: resolve conflicts between old main branch and dev
eto-NaN Nov 2, 2025
eb2dff8
merge: standard lib updates
eto-NaN Nov 2, 2025
b1a743b
refactor(tests): update function type parsing test for consistency wi…
LixiosDelios Nov 2, 2025
59cb8e2
feat: readme
abeldaverio Nov 2, 2025
83e69a8
merge: readme
abeldaverio Nov 2, 2025
7ad7542
fix: readme
abeldaverio Nov 2, 2025
5edb30f
Merge branch 'dev' into alexandreguillaud/gla-53-parse-n-t-etc
LixiosDelios Nov 2, 2025
30f7cd9
tests(compiler): remove outdated TU (we accept +1 and -1 now to rever…
eto-NaN Nov 2, 2025
dae77eb
merge: dev updates
eto-NaN Nov 2, 2025
e31594a
Merge pull request #92 from PierrePruvost03/alexandreguillaud/gla-53-…
eto-NaN Nov 2, 2025
6ab31e0
fix: remove useless files
eto-NaN Nov 2, 2025
dcddabe
fix: indicates that there is no CHANGELOG.md file to remove compilati…
eto-NaN Nov 2, 2025
d5504be
merge: dev updates
eto-NaN Nov 2, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 0 additions & 19 deletions .github/workflows/basic_checks.yaml

This file was deleted.

62 changes: 62 additions & 0 deletions .github/workflows/full_project.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: Full Project

on:
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch:

env:
STACK_ROOT: /tmp/stack-root

jobs:
build_all_projects:
runs-on: ubuntu-latest
container:
image: epitechcontent/epitest-docker
steps:
- uses: actions/checkout@v4
- name: build all projects
run: make all
- name: verify all binaries exist
run: |
test -f LispInterpreter/glados-lisp
test -f Kong/glados-kong
echo "Both binaries exist!"

run_all_tests:
runs-on: ubuntu-latest
container:
image: epitechcontent/epitest-docker
steps:
- uses: actions/checkout@v4
- name: run all unit tests
run: make test
- name: run LISP functional tests
shell: bash
run: |
sudo apt-get update && sudo apt-get upgrade -y && sudo apt-get install python3-venv -y
cd LispInterpreter
bash functionnal_tests/install_requirements.sh
source .venv/bin/activate
python3 functionnal_tests/run.py
- name: run Kong functional tests
shell: bash
run: |
cd Kong
bash functionnal_tests/install_requirements.sh
source .venv/bin/activate
python3 functionnal_tests/run.py

defense_ready:
needs: [build_all_projects, run_all_tests]
runs-on: ubuntu-latest
steps:
- name: Project ready
run: |
echo "LISP Interpreter (Part 1) - Built and tested"
echo "Kong Compiler (Part 2) - Built and tested"
echo "All tests passing"
27 changes: 27 additions & 0 deletions .github/workflows/kong_checks.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Kong Compiler - Basic Checks

on:
push:
paths:
- 'Kong/**'
- '.github/workflows/kong_checks.yaml'
pull_request:
branches-ignore:
- main
paths:
- 'Kong/**'

env:
STACK_ROOT: /tmp/stack-root

jobs:
check_kong_compilation:
runs-on: ubuntu-latest
container:
image: epitechcontent/epitest-docker
steps:
- uses: actions/checkout@v4
- name: build Kong compiler
run: make kong
- name: check Kong binary exists
run: test -f Kong/glados-kong
36 changes: 36 additions & 0 deletions .github/workflows/kong_tests.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: Kong Compiler - Tests

on:
pull_request:
branches-ignore:
- main
paths:
- 'Kong/**'
push:
branches:
- main
paths:
- 'Kong/**'

env:
STACK_ROOT: /tmp/stack-root

jobs:
run_kong_tests:
defaults:
run:
shell: bash
runs-on: ubuntu-latest
container:
image: epitechcontent/epitest-docker
steps:
- uses: actions/checkout@v4
- name: run Kong unit tests
run: make test-kong
- name: run Kong functional tests
run: |
sudo apt-get update && sudo apt-get upgrade -y && sudo apt-get install python3-venv -y
cd Kong/
functionnal_tests/install_requirements.sh
source .venv/bin/activate
python3 functionnal_tests/run.py
31 changes: 31 additions & 0 deletions .github/workflows/lisp_checks.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: LISP Interpreter - Basic Checks

on:
push:
paths:
- 'LispInterpreter/**'
- '.github/workflows/lisp_checks.yaml'
pull_request:
branches-ignore:
- main
paths:
- 'LispInterpreter/**'

env:
STACK_ROOT: /tmp/stack-root

jobs:
check_lisp_compilation:
runs-on: ubuntu-latest
container:
image: epitechcontent/epitest-docker
steps:
- uses: actions/checkout@v4
- name: build LISP interpreter
run: make lisp
- name: check LISP binary exists
run: test -f LispInterpreter/glados-lisp
- name: test LISP binary works
run: |
echo "(+ 1 2)" | LispInterpreter/glados-lisp
echo "LISP interpreter basic test passed"
36 changes: 36 additions & 0 deletions .github/workflows/lisp_tests.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: LISP Interpreter - Tests

on:
pull_request:
branches-ignore:
- main
paths:
- 'LispInterpreter/**'
push:
branches:
- main
paths:
- 'LispInterpreter/**'

env:
STACK_ROOT: /tmp/stack-root

jobs:
run_lisp_tests:
defaults:
run:
shell: bash
runs-on: ubuntu-latest
container:
image: epitechcontent/epitest-docker
steps:
- uses: actions/checkout@v4
- name: run LISP unit tests
run: make test-lisp
- name: run LISP functional tests
run: |
sudo apt-get update && sudo apt-get upgrade -y && sudo apt-get install python3-venv -y
cd LispInterpreter
functionnal_tests/install_requirements.sh
source .venv/bin/activate
python3 functionnal_tests/run.py
12 changes: 5 additions & 7 deletions .github/workflows/mirror_repo.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,25 +4,23 @@ run-name: Mirroring Glados
on:
workflow_run:
workflows:
- basic checks
- run tests
- Full Project
types:
- completed
branches:
- main

jobs:
is_mirror_repo:
name: Check if mirror repo
runs-on: ubuntu-latest
env:
MIRROR_URL: ${{ vars.MIRROR_URL || 'release' }}
if: ${{ github.repository != vars.MIRROR_URL && vars.MIRROR_URL != 'release'}}
if: ${{ github.event.workflow_run.conclusion == 'success' && github.repository != vars.MIRROR_URL && vars.MIRROR_URL != ''}}
steps:
- run: echo "mhhh, tu t'es pas trompé... le repo il aaaaaaaaaa"
- run: echo "Good repo - Full Project succeeded, ready to mirror"

push_to_mirror:
needs: [is_mirror_repo]
name: Push to Epitech repo
if: ${{ github.ref == 'refs/heads/main' }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand Down
9 changes: 7 additions & 2 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,11 @@ jobs:
- name: Fetch tags with annotations
run: git fetch --tags --force
- name: Build project
run: make
run: make all
- name: Verify binaries exist
run: |
test -f Kong/glados-kong && echo "✅ Kong binary built"
test -f LispInterpreter/glados-lisp && echo "✅ Lisp binary built"
- name: Extract tag name
id: tag
run: echo "tag=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT
Expand All @@ -48,7 +52,8 @@ jobs:
name: "Glados ${{ steps.tag.outputs.tag }}"
body: ${{ steps.release_notes.outputs.notes }}
files: |
glados
Kong/glados-kong
LispInterpreter/glados-lisp
draft: false
prerelease: false
env:
Expand Down
25 changes: 0 additions & 25 deletions .github/workflows/run_tests.yaml

This file was deleted.

1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,4 @@ hie.yaml
functionnal_tests/tmp/*.lsp
**/*.log
dist*
**/tmp/*.kong
11 changes: 0 additions & 11 deletions CHANGELOG.md

This file was deleted.

11 changes: 11 additions & 0 deletions Kong/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
*.lock
.stack-work
glados*
test/coverage
.idea
hie.yaml
**/*.venv
functionnal_tests/tmp/*.lsp
**/*.log
dist*
**/tmp/*.kong
40 changes: 40 additions & 0 deletions Kong/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
##
## EPITECH PROJECT, 2025
## makefile glados
## File description:
## Makefile for glados
##

NAME = glados-kong

STACKNAME = glados-kong-exe

all: $(NAME)

$(NAME):
stack build --copy-bins --allow-different-user
mv $(STACKNAME) $@

clean:
stack clean
$(RM) strong.out
$(RM) test/coverage/*.html
$(RM) test/coverage/*.tix
$(RM) functionnal_tests/tmp/*.kong

fclean: clean
$(RM) $(NAME)

re: fclean all

FUNC_TEST_OUTPUT_DIR = functionnal_tests/tmp

FUNC_TEST_OUTPUT_LOG = $(FUNC_TEST_OUTPUT_DIR)/result.log

tests_run:
stack test --coverage --allow-different-user
stack hpc report --all --destdir ./test/coverage

test: tests_run

.PHONY: all clear fclean re tests_run test
Loading