fusionlanguage / fut

Fusion programming language. Transpiling to C, C++, C#, D, Java, JavaScript, Python, Swift, TypeScript and OpenCL C.
https://fusion-lang.org
GNU General Public License v3.0
1.77k stars 55 forks source link

Use PLOOC for OOP on C? #90

Closed ghost closed 1 year ago

ghost commented 1 year ago

https://github.com/GorgonMeducer/PLOOC

ghost commented 1 year ago

@pfusik Should this issue be closed as not planned?

pfusik commented 1 year ago

It seems that PLOOC provides no added value to cito and only a drawback of an added dependency.

I'm not familiar with PLOOC, but looking at the README:

Provide protection for private class members Support protected members

cito does not expose struct fields in the header file. Objects are allocated on the heap using the emitted New/Delete functions.

Support multiple inheritance

Ć does not support multiple inheritance.

Support interface implementation

Ć does not support interfaces.

Support strict type checking/validation in certain compilers, such as IAR with multi-file compilation enabled.

Not sure what exactly is meant here. cito output is a standards-conforming, type-safe C.

Compliant with ANSI-C99

So is cito output.

ANSI-C90 is also supported but the protection for private feature is disabled.

Ć no longer supports C90.

Support Overload

Ć does not support overloading.