Is there such a thing?

Taylor Hillegeist via Digitalmars-d digitalmars-d at puremagic.com
Tue Mar 3 09:17:17 PST 2015


On Tuesday, 3 March 2015 at 10:37:49 UTC, Kagamin wrote:
> On Saturday, 28 February 2015 at 17:06:58 UTC, Dicebot wrote:
>> On Friday, 27 February 2015 at 19:49:37 UTC, Taylor Hillegeist 
>> wrote:
>>> I just think its a shame that all over the place people are 
>>> compiling code in different programming languages, and 
>>> although all the .o  files are compatible with each other 
>>> there isn't a standard cross language way of defining a 
>>> binding. But that would be making people agree on things...
>>
>> C is pretty much a standard for cross-language ABI
>
> Object files have no language-level compatibility, only 
> linker-level compatibility. You can get function arguments 
> wrong, and linker won't tell you.

So, I don't thing C is very easy to pull data from, In fact i 
would guess the only way this would work is if the compiler 
produced standard data format like JSON or XML or YAML if you 
like that kind of thing. And then transformed it to native code.

<CStyleFunction="Foo">
   <ReturnType>
     <sint32>
   </ReturnType>
   <Parameter>
     <Float64="MyFloat">
   </Parameter>
</CStyleFunction>

I think YAML would look nicer... I also know that some languages 
have certain capabilities. And this is a lot more complex of 
problem. But I hear about people making automatic binding 
generators and all sorts of 1 off tools, I just don't understand 
why there doesn't seem to be common standard solution.


More information about the Digitalmars-d mailing list