Hello
I understand your question, Ring support creating extensions using C & C++
Allegro is a game programming library for C
Qt is a Framework for C++
Through Ring support for extensions written in C/C++ we created RingAllegro & RingQt
No
transcompiling is done
It's just like creating a Ring library, but this time the library is written in C/C++ instead of writing it in Ring
And this requires creating a binding that uses Ring API for C (To pass data from Ring to C functions and get output from C functions as Ring values)
Flutter is a framework for Dart language (Not a framework for C/C++)
And Ring doesn't support creating extensions in Dart language
So we have to go the other way
Dart call C/C++ code and C/C++ code call Ring code (Which we call embedded Ring in C/C++ instead of extending Ring using C/C++ code as we did with RingAllegro and RingQt)
Embedding Ring in C/C++ is what we did with (RingQt for Android & RingQt for WebAssembly) - We export a Qt project that contains Ring VM and run Ring object file (*.ringo)
With Flutter, Support Ring requires embedded Ring in C/C++ code then extending Dart with this C/C++ code - So many layers :D
Greetings,
Mahmoud