QuackScript is a delightfully unhinged programming language that thrives on chaos and caffeine. Packed with quirky built-ins like coffee() to turbocharge execution, yell() to shout every output in ALL CAPS at triple speed, and blameSomeone() to throw random exceptions at imaginary culprits — it’s the perfect tool when you want your code to be as unpredictable as your creative process.
Ryan Tawileh
Check their project out: Portfolio
b068931
Check their projects out: BMP Reader, Typename Array, From Scratch Interpreter (FSI)
Once you ship this you can't edit the description of the project, but you'll be able to add more devlogs and re-ship it as you add new features!
I added functions which took way too long, over 2 hours and 300 lines of code! Luckily pain is part of the problem, and after repeating that about 20 times, I got back my motivation. Anyway that should hopefully be the last devlog today. I'm probably going to finish all the basic functions tomorrow and start making some custom quirky features ;)
I added FOR loops and WHILE loops, which were surprisingly simple but sooo time consuming. I also reached over 1000 lines of code, which feels like a big achievement! :D
I added comparison variables like == or AND, and also added IF, ELSE, and ELIF statements. What I found about this was that I made them expresions, meaning you could use them like this:
VAR age = 19
VAR price = IF age >= 20 THEN 40 ELSE 20
price = 20
I added variables to my programming language! It wasn't too hard, however currently they use the word VAR, which I think kind of sucks, so I need to figure out something else to call it!
FINALLY! Something worked right without needing years of debugging. I created an interpreter which actually let me do operations instead of staring at them! Tomorrow I'm probably going to add file support and add some features like variables and functions. I also added my favorite type of error, runtime errors with traceback that no one understands!
Making the parser was supposed to be simple, as I was following a tutorial, however I got hit with so many errors! Luckily they were all due to my horrible syntax, but else than that it was quite satisfying seeing the end result! I got the parser to create almost like a tree of which operation to run. I also made it use order of operations and support parentheses!
I finally got around to building a lexer for my OS, it’s the part that figures out what every single character means and even catches errors for me. Honestly, I was feeling pretty proud... until I hit the most ridiculous roadblock. I forgot to add an underscore in a variable name. Yep, one tiny missing character that had me stuck in the same loop for hours. I was so close to losing my mind!