Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
T
TDP019
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Mattias Ajander
TDP019
Repository graph
Repository graph
You can move around the graph by using the arrow keys.
main
Select Git revision
Branches
5
feature-args
feature-function
feature-repl
feature-variables
main
default
protected
5 results
Begin with the selected commit
Created with Raphaël 2.2.0
12
Apr
9
8
7
6
3
2
1
31
Mar
30
27
14
13
10
9
8
7
25
Feb
19
18
14
Improved scope and block management. Implement a max depth for scope aswell as a check if a new scope is needed in block calls.
feature-functio…
feature-function main
Destructor for scope, prevent functions with the same name as built in functions
removed unnecessary includes
feature-variables
feature-variables
Declaring variables now typechecks initializer
Implement functions, return statements, and pipe operator along with a number of other fixes.
Update project deadlines table with status column
Init all variables to prevent segfault. ARGS is most likely done now.
feature-args
feature-args
Merge branch 'main' into feature-args
Improved arg parser, updated README and new error messages.
feature-repl
feature-repl
Merge branch 'main' into feature-args
Mostly stable REPL implementation with same scope evaluation and new exit function
Buggy but functional var arethetic operations. leng of args work, but not print on empty args.
WIP for command line arguemtns. Calling length on an empty args list causes segfault.
Prep parser and main for both REPL and command line arguments. Not yet implemented.
Identifiers can now reach variables in the scope. However not currently working with arithmetic operations. Think the AST for that one has priority before variable lookup
Messy but functional code for bot calls and method calls. say [1,2,3].length(). Will need to be refactored.
Improved print function, with example file
If/else/if else + While implemented
Compile with -g for debug
Merge branch 'variables' into 'main'
Merge branch 'main' into 'variables'
adding declared and initilized variables to scope
Oops
Added function calls, built in standard functions for print and read
Implemented basic scope management
Removed eval caching since nodes will be evaluated in loops and such.
Fix tests so they work with the new Token op instead of enums
Changed include path, moved ProgramNode to BlockNode to be used later.
Moved expression nodes to own folder
Implemented so multiple statements can be evaluated, fixed some location issues for pretty error messages
More comments, some parts via Claude 3.7
Improved main file with tokens, ast and debug settings.
Allow for both string and char concat in any order.
Simplify OpNodes with Tokens instead of Op specific enums
Bugfix for Parser + reminder for scope
Parser MVP done, math and bool expr.
Added FileError and special case for missing filenames in trace
UnaryOp implemented ("!" and "-") with tests
BinaryOp implemented (such as +, ==, && and ^) with test
New Node evaluate() and get_value() pipeline with new NodeValue class
Loading