Stats

3
Projects
65
Devlogs
23
Votes
1
Ships

Coding Time

All Time: 185h 43m
Today: 0h 0m

Member Since

June 17, 2025

Badges

1
🚢
Maiden Voyage
you shipped your first project! the journey begins...

Projects

3
bike active aero handler
3 devlogs • 2 months ago
tungsten sandbox
8 devlogs • 3 months ago
tungsten
54 devlogs • 3 months ago

Activity

Earned sticker

fixed a bug inside the dereference operator and inside the lexing of comments

Earned sticker
RickIsGone
RickIsGone worked on tungsten
1h 30m • 1 day ago

and i finally fixed the binop parsing so i can finally ship this project which took too much time from my summer
i want to kms, i'll probably stop working on this for a couple of days just to get my sanity back but at least i'll be able to get that sweet A1

Earned sticker
RickIsGone
RickIsGone worked on tungsten
4h 1m • 2 days ago

finshed fixing most of the deref operator codegen bugs and also improved the FunctionAST codegen function logic

i decided to abandon the idea of compiling my compiler with emscripten so i ported the site to a server and now i just need to add the compiler executable and libreries to the server and i'll finally be able to ship this project together with the compiler itself (the errors inside the console are because of the compiler executable missing)

Earned sticker
RickIsGone
RickIsGone worked on tungsten
2h 23m • 4 days ago

lil devlog while in class:
i just finished fixing the codegen logic for the dereference operator (*) and i can actually assign addresses to pointers now and also access the contained values

RickIsGone
RickIsGone worked on tungsten
2h 55m • 4 days ago

just finished adding some corelib functions which will be moved (when i figure out how to make it) to the stdlib
also added the unary operator & to return a pointer to the variable so you can actually call the input function

Earned sticker
RickIsGone
RickIsGone worked on tungsten
1h 18m • 5 days ago

finally added support for variadic arguments and for special chars inside strings, i just need to fix some bugs and some other things then i'll be able to ship

Earned sticker
RickIsGone
RickIsGone worked on tungsten
3h 26m • 8 days ago

finally got external functions to work and already started to implement some coreib functions like shell and print, i just have to make the compiler compile on its own and maybe fix some little bugs then i can ship

Earned sticker
RickIsGone
RickIsGone worked on tungsten
1h 43m • 9 days ago

finally added a somewhat working codegen function for BinaryOperationAST which can actually do operations other than assignments (it's still a bit buggy tho)

RickIsGone
RickIsGone worked on tungsten
3h 18m • 9 days ago

i just finished adding a very basic and probably buggy visit function for BinaryExpressionAST but in doing so i probably broke some other code which was responsable for making the return type of the main function an i32, i also started doing a rework of the codegen function for BinaryExpressionAST but i haven't pushed it to github yet

Earned sticker
RickIsGone
RickIsGone worked on tungsten
1h 44m • 10 days ago

I finally got forward declaration for functions working and now i can actually declare them wherever i want in the source code and they will be accessible everywhere, i also added name mangling for functions overloads during codegen

RickIsGone
RickIsGone worked on tungsten
57m • 11 days ago

I just finished adding the visit and codegen functions for all of the control flow statements (if, for, while, do while)

Earned sticker
RickIsGone
RickIsGone worked on tungsten
3h 14m • 11 days ago

i just finished adding the visit functions for NumberExpressionAST and UnaryExpressionAST and also forces the main function to be a Int32 rather than a Double. I also added back the llvm codegen

RickIsGone
RickIsGone worked on tungsten
56m • 12 days ago

i just fixed two other bugs inside the logic for the visit functions of ReturnStatementAST and ExitStatement which would make the program crash and now they both generate errors and do typechecks

Earned sticker
RickIsGone
RickIsGone worked on tungsten
4h 36m • 12 days ago

Just finished doing some bug fixing and i finally fixed a bug in the BlockStatementAST parsing logic that had been haunting me for about a week and i couldn't figure out where it came from but i finally fixed it so i won't have to worry about it again, i also found a bug in the parsing logic of IfStatementAST, which i also fixed

RickIsGone
RickIsGone worked on tungsten
2h 30m • 16 days ago

I just finished implementing the visit function for CallExpressionAST so i can now actually see if a function call is correct, if said function exists or if i'm pasing the wrong arguments to it

RickIsGone
RickIsGone worked on tungsten
4h 14m • 19 days ago

started to do a tempoary rework of the types so instead of having lots of number types i only have a Num type, this will allow me to ship faster and not having to worry about casting, after shipping i will go back to the way it was before but for now i'll stick with this to make my life easier

I just finished implementing a scope system for the semantic analyzer, adding the visit function for FunctionPrototypeAST and BlockStatementAST and implementing a check for composite types (ex. Int*/Int[]**)

i fixed the error inside the visit function for variable declaration but i discovered some other bugs i'm working on fixing

I finally fixed the parser, now i just have to fix the things i broke inside the semantic analyzer when introducing the type system and then I'll continue introducing the visit functions for the AST nodes
(you can see in the video that the semantic analysis step is broken)

i just finished painfully switching from using std::string for types to using an actual type system i made but while introducing the type system i broke the parser so before continuing to work on the semantic analyzer and codegen i'll have to fix the parser

Update attachment

i fixed a little bug and now i also added the visit functions for ReturnStatementAST and ExitStatement

Update attachment

implemented visit pattern for VariableExpressionAST and helper function to check for possible data loss during assignment, also added ImportStatementAST node and parsing for 128b types (Uint128, Int128)

Started implementing the visit functions in the SemanticAnalyzer class and i finally have some of them working

another rework of the SemanticAnalyzer class, this time using a visit patter instead of multiple if else with dynamic_cast

Update attachment

Started working on the SemanticAnalyzer class

Update attachment

i just finished adding parsing for: sizeof and nameof, and got codegen functions working for: sizeof, nameof, VariableExpressionAST (fixed), VariableDeclarationAST (kinda fixed), BinaryExpressionAST (only partially)

Added staticCast and constCast parsing and lexing.
I'm still working on fixing the codegen for binops and function calls and adding the rest of the codegen functions

Update attachment

added codegen for while statements and fixed cmake for arch linux

Update attachment

i got help from a friend and i completetly remade the schematics and pcb, i've also added a very basic firmware for it (i can't make a good firmware until i get my hands on the board and on the servomotors). the board is now ready to ship and i'm happy about how it came out

Update attachment

the schematic is probably done, i don't think i have to add anything else, maybe a gps chip in the future but rn i don't think there are any errors and it should work

Update attachment

i'm still working on the schematic but i'm at a good point where i'll start working on the PCB very soon (hopefully)

Update attachment
RickIsGone
RickIsGone created a project
63d ago

bike active aero handler

this is my version of the hermes YSWS where i'm making a device that checks the lean angle of my bike and adjusts the winglets accordingly

bike active aero handler
3 devlogs 0 followers Shipped
RickIsGone
RickIsGone worked on tungsten
2h 5m • 2 months ago

i just finished making a vscode extension for tungsten, it supports syntax highlighting, compiling and running tungsten code (it still doesnt compile cause of the actual compiler not working)

Update attachment
RickIsGone
RickIsGone worked on tungsten
7h 49m • 2 months ago

i've started implementing the codegen functions and i got some of them working to the point i can actually generate some pretty simple programs, here's a list of all the nodes i made the codegen function work for:
NumberExpression, StringExpression, BinaryExpression(only some operators), IfStatement, ReturnStatement, ExitStatement, BuiltinFile, BuiltinFunction(only the codegen, the actual function part is still not done), BuiltinLine, BuiltinColumn, Function, FunctionPrototype, BlockStatement, CallExpression, VariableExpression, VariableDeclaration

RickIsGone
RickIsGone worked on tungsten
1h 27m • 2 months ago

rework of the tpkg progress bar

Update attachment
RickIsGone
RickIsGone worked on tungsten
5h 10m • 3 months ago

i started working on workflows to automate builds and releases but building on windows is revealing to be a living hell, im successfully building on ubuntu but i'll probably stop working on the window workflow for a bit

Update attachment
RickIsGone
RickIsGone worked on tungsten
4h 2m • 3 months ago

finally parsing class members correctly

Update attachment
RickIsGone
RickIsGone worked on tungsten
7h 16m • 3 months ago

added almost full support for classes during parsing, now i just have to add support for referencing classes members like this class.member and add inheritance and all the rest of the good stuff

Update attachment
RickIsGone
RickIsGone worked on tungsten
5h 19m • 3 months ago

added support for some builtin core functions

Update attachment
RickIsGone
RickIsGone worked on tungsten
5h 8m • 3 months ago

i restructured the project's structure and started working a bit on the package manager

Update attachment
RickIsGone
RickIsGone worked on tungsten
6h 19m • 3 months ago

stated adding some buggy codegen functions

Update attachment

i just pushed a new build of the compiler to the repo to keep up with the current state of the compiler

Update attachment
RickIsGone
RickIsGone worked on tungsten
3h 26m • 3 months ago

I'm done with parsing, i just need to implement unary operators and support for extern functions and module/import/export stuff and type modifiers like pointers, references and arrays but other than that im done.
Now i can finally start working on codegen with llvm

Update attachment
RickIsGone
RickIsGone worked on tungsten
3h 13m • 3 months ago

finshed adding a working version of the function to parse if and else statements, still need to work on the condition parsing

Update attachment
RickIsGone
RickIsGone worked on tungsten
5h 33m • 3 months ago

i've added a lot of parsing functions and the parser actually kinda works.
now i only need to add parsing for binary operations and conditional statements

Update attachment

added better error messages including filename, line and column

Update attachment

added base of _parseBlock function, still need to add the line parsing part

Update attachment
RickIsGone
RickIsGone worked on tungsten
2h 35m • 3 months ago

added some of the necessary parsing functions, still working on the rest.
I'm still working on them and they are not the final version, I still need to add a panic mode for when i find an error so that the parser won't give me multiple errors when parsing something with a single error. I also added a symbol table for identifiers

Update attachment
RickIsGone
RickIsGone worked on tungsten
4h 56m • 3 months ago

I just finished adding some of the necessary AST nodes to the language, i'm now working on the recursive descent parser to make sure it can actually parse those nodes

Update attachment
RickIsGone
RickIsGone worked on tungsten
3h 20m • 3 months ago

I reworked the project's structure and i began working on the parsing.
I also started working on the language core and stdlib

Update attachment

fixed CTRL + Z not working after pressing enter or tab

Added support for Unicode chars highlighting, still need implementing Unicode support in the compiler

Update attachment

Fixed syntax highlighting for operators not working and begun testing constants

Update attachment

I've added an horrible implementation of syntax highlighting but it works so I'm happy with it, now i jut have to keep updating the compiler itself and compiling it to webasm to update the project

Update attachment

fixed the site UI, still need to add syntax highlighting and fix some backend errors

Update attachment
RickIsGone
RickIsGone worked on tungsten
1h 7m • 3 months ago

modified the CMakeLists to also compile with emscripten

Update attachment

started making the online compiler to try tungsten, i still need to fix some things and add syntax hilighting but thanks to copilot the html part of the site is kinda ok

Update attachment
RickIsGone
RickIsGone created a project
95d ago

tungsten sandbox

an online compiler to try the tungsten programming language

tungsten sandbox
8 devlogs 0 followers
RickIsGone
RickIsGone worked on tungsten
1h 45m • 3 months ago

i started studying parsing algorithms to see which one would be better to implement for my parser and I'll probably go with a recursive descent parser

Update attachment

Refactoring of the token module so instead of following the snake_case convention they now follow the PascalCase convention

Update attachment
RickIsGone
RickIsGone worked on tungsten
1h 36m • 3 months ago

Fixed an error in the lexer during the parsing phase and added new token types

Update attachment

Updated a bit the README to make it a little better

Update attachment

Fixed the handling of fixed size tokens so instead of entering an infinite loop it will push an invalid token in the token vector, it's still a bad way to handle errors but i want to focus on the parsing

Update attachment
RickIsGone
RickIsGone worked on tungsten
1h 51m • 3 months ago

Started adding the first parsing functions and started refatoring the lexing function

Update attachment

Added basic AST nodes to (hopefully) begin parsing the tokens already generated by the lexer

Update attachment
RickIsGone
RickIsGone worked on tungsten
1h 58m • 3 months ago

separated the Token class from the Lexer and made into a module of its own

Update attachment
RickIsGone
RickIsGone created a project
101d ago

tungsten

a statically-typed multi-paradigm compiled programming language made with the LLVM framework and inspired by C++ and Java

tungsten
54 devlogs 9 followers
RickIsGone
RickIsGone joined Summer of Making
101d ago

This was widely regarded as a great move by everyone.