Hi all,

I am proud and happy to announce I just finished the next milestone of my 
project on porting PLC4X to C.

It was quite a marathon. I guess if you simply think about an API that is quite 
easy to port to a language like C, even if it does sort of feel strange every 
now and then.
However with mspec we have this concept of discriminated types which in 
object-oriented languages is handled by types and subtypes.
C however doesn’t know this concept, so I had to find ways to port all of these 
concepts (as far as we needed them) to C using only what’s available in C.
This required quite a lot of refactoring. But the good thing is: this 
refactoring had an impact on the existing Java drivers and I think the changes 
to the “discriminators” was a huge leap forward.

Next on my plan is to implement the logic needed to build real drivers. Right 
now the SPI module in PLC4C is pretty empty. It does already have all the means 
to load drivers and transports, but things like the ReadBuffer and WriteBuffer 
are empty skeletons also don’t we have any form of base classes like we have in 
the Java world that allow us to implement drivers as simple as possible. This 
will be my challenge for the next few weeks. I do hope that I won’t have 
another 3-4 week delay, as I did with the code-generation.

So much for the update :-)


Reply via email to