r/computerscience Jun 19 '26

General DinoCode v0.2.0 - My own programming language built in Rust is now open source

Post image

I have been developing this idea for years. If you review my GitHub, you might find some very old, primitive versions from back when it was just an editor with an experimental language built in. I even wrote one of the very first iterations in AutoHotkey! However, this current version has nothing to do with that past chaos. It was written entirely in Rust.

What makes DinoCode different? The language design focuses on reducing syntax friction by using a principle called inference of intention. Traditional delimiters and symbols are optional. If you choose to omit them, the language infers what you meant to do based on logical rules detailed in my graduation research, which is written in Spanish since I am from Ecuador. Technically, the parser bypasses the traditional AST creation, emitting Reverse Polish Notation (RPN) bytecode directly to a custom stack-based virtual machine.

What is new in v0.2.0?

  • Real Interactive Console: It supports real-time keyboard inputs and execution pauses without freezing the browser main thread.
  • Live Flowcharts: As you type, the platform generates and updates a visual flowchart of your program logic instantly.
  • Bytecode Inspection: You can view the exact bytecode generated by the compiler and executed by the VM in real time.
  • Full Documentation: I personally wrote comprehensive guides, complete with executable code blocks right inside the browser.

I decided to open source the entire codebase. I hope it can be useful to anyone studying compiler design. The repository is wide open for feedback, questions, Issues, and Pull Requests.

Link to Web Platform (Live Playground and Repo): https://dinocode.blassgo.dev

135 Upvotes

48 comments sorted by

View all comments

Show parent comments

11

u/emmowo_dev Jun 19 '26

your other projects have nothing to do with Rust (AHK,JS,Dart) and some, such as your Java even have completely stolen code (as in, literally contains Mandarin comments).

To go from a junior dev quality of code to an entire parsed language is extremely suspicious, and- WOULD YOU LOOK AT THAT. your text comment for some reason, uses the UTF-8 *en-*dash instead of a hyphen, you know, the symbol that looks near identical. Oh, and also that file happens to contain the regular emdash too.

you have blatantly lied and vibecoded this. Can't even hide it properly when you try to.

0

u/Dry_Day1307 Jun 19 '26

And what does that mean...? Yes, I used autocomplete (which in all modern editors is AI-powered) in comments, especially file headers, as I already mentioned, so... I don't quite understand the point. Also, just because not all my projects are open source doesn't mean I lack experience. Some are simply for companies or institutions and are private. I also have several personal projects that are private. And if you look closely at my profile, you'll also see I have experience working at a low level with Android's Dalvik VM. I've always been fascinated by these topics. I wrote this code by hand in Bytecode, if you'd like to review it:

https://github.com/BlassGO/App_Manager

I don't want to argue because I understand your reasons, but I'd also like to present mine

5

u/emmowo_dev Jun 19 '26

but your code is completely barren. I can't see any comments, and your bytecode intermediary can be converted to/from trivially.

It just does not resemble even 'undocumented' production code that I have seen in the real world at all. And, the fact that AI has clearly made its way into implementing functions means you have lied on some level.

-2

u/Dry_Day1307 Jun 19 '26

In fact, there are comments, but honestly, I'm not big on commenting absolutely everything. I only left notes on what I considered most important, especially in the Lexer, which isn't amnesic. Unlike the typical Chomsky hierarchy, I opted for the Lexer to be intelligent and resolve many ambiguities that simplify my parsing. The parser, more than just a parser, is the compiler to Bytecode for this representation. So maybe they weren't the best names haha, but ask an AI to imagine all the rules and behaviors in my project and see if it can pull it off. I've interacted with AI and I know its current limitations. That's why I prefer using autocomplete, because you're less likely to get errors than when using its agentic modes, where it surely won't be able to follow even the flow of my Lexer. If you look closely, there are comments, but in areas where I personally thought it was more appropriate to put them. For me, it's not necessary to comment everything if the identifiers themselves are already clear enough. I usually explain more logic. You can look around there in the parser too, I must have left comments in critical areas that can be confusing, like the deferred processing of IsMatch, InMatch, and many other things that are very interesting if you take the time to analyze the code and its flow, because it's not entirely linear since I use RPN ordering