Another language added to PUM – though in an early state, but the first program has been coded on an Android device via C# and Xamarin and it got its result …
The language binding was mainly driven by the design of the Java binding I wrote last weekend – but due to the fact, that I focused now on Xamarin I decided to go to implement the binding by creation “Portable Class Libraries” under .NET.
That was a topic I’ve never done before … and it became quickly a miracle … The PCL based libraries are libraries based on available .Net code on the selected target platforms and the intersection of available methods and attributes can become very strange.
Looking for solutions in the Internet is more or less useless – most of these published solutions are based on the normal .Net 4.x and this has far more classes than available in the PCL platform.
But somehow I made my way to implement a http request and even got an answer from that. The biggest problem became the selection of a suitable json library – all libraries I tried did not work. Even the Newtonsoft.Json library (10.0 with various architectures) had problems with the various platforms and well I was nearly up to a point to leave this project, when I found an older Newtonsoft.Json 7.0 library at Xamarin and I used this one and it worked.
Due to the Xamarin way I only support the async-API … that means, that all calls are executed asynchronely to the program – this seems to come from the mobile platforms – and was introduced later in the desktop .Net 4.x system also.
Now I have to become familar to this new development platform, polish the libraries a little bit, try out iPhone and that stuff.
After Java and Xamarin/C# most of my “wished” languages are available under PUM in a more or less (:-)) stable way:
- Java, C#, Python 3, Sencha ExtJS, Electron (ExtJS), VASmalltalk
That means, that from all these languages I can now access my Gemstone/S based API-oriented systems.