MilkeeyCat / ddnet_protocol

DDNet network parsing library in C
GNU Affero General Public License v3.0
0 stars 1 forks source link

bindings for other languages #36

Open ChillerDragon opened 2 days ago

ChillerDragon commented 2 days ago

i know there isn't really any code yet xd and this might sound a bit premature

But what do you think about bindings for python, ruby and lua or whatever we feel like. It being written in C makes it pretty portable. I mean it can even be integrated into the linux kernel hehe. So portability could become one of the core goals of this library. All the big C libraries have bindings in other languages. Often these are maintained by someone else in another repository.

@MilkeeyCat who do you think about sprinkling in a bit of high level scripting code to make the bindings work and add the bindings directly into this repo? Or will it bloat stuff up too much?

The usage of C is already barely holding the 50% if we add a few bindings the boilerplate code in other languages will probably pollute the stats to a degree that it is non obvious that this even is a C library. But I am not sure if that is something you care about.

image

MilkeeyCat commented 2 days ago

I don't care about library's language usage stats. I'd say it would be ok add binding either when someone will ask for them(won't happen, because we are the only 2 people who's gonna use this library xd) or when the library will be almost ready. Also, doesn't libtw2 provide some bindings?

ChillerDragon commented 2 days ago

libtw2 has python bindings for huffman. I don't really know libtw2s net code but I think it has no bindings. I still think there is value in a python package that provides huffman by depending on a C instead of rust compiler.

ChillerDragon commented 2 days ago

Okay then I will resist the urge to add any bindings before the library is actually finished xd