DEV Community


C++ Levitation: Looking for contributors

kaomoneus profile image Stepan Dyatkovskiy ・2 min read

Hi guys! I'm working on kind of alternative C++. Namely I developed alternative modularity for C++.

Here is a link:

C++ Levitation Project

About project

Main idea is to extend existing namespaces (instead of inventing alternative namespace concept, like in C++20 modules).

Another idea is to combine file system scope and module path, just like in Python, and very similar to Java.

There is a well detailed, so you can learn details there.

Currently I have implemented the compiler (customized clang + own meta driver). I have covered it with tests, and even tried some small apps with STL, and it works! I have tested it on Linux and on Mac OS.

I understand that it's kind of crazy to go against mainstream, I also understand, that even though I have tried to do my best and complete compiler itself, it is still merely a toy, just a pet project.

And yet sometimes I can't stand and return to it again and again.

Surprisingly, I found that indeed, it's easy to implement some small projects with my extension.

Why and how it was started?

When you develop on C++ it's always about some bicycle invention, we create some harness, some sort of dynamic cast and so on.

One day it struck me: dude, you have some experience in compiler development, why can't you bring all that "harness" into compiler AST level? Why not to make own syntax extension?

That was started for fun, and for fun it is. Though, there were periods, when I was working full time, full of ambitions! So I started to love that thing after all, haha!

Perhaps some of you guys would be interested to review or contribute, may be just for fun ;-)

Feel free to ask questions!

P.S.: Now it's good to create plugins for popular IDEs (CLion, Eclispe, etc). So this is my next step.


Discussion (1)

Editor guide
dynamicsquid profile image
DynamicSquid • Edited

Cool! How do you make your own syntax extension?