I woke up this morning and was wondering if it is possible to create a
message API for C for communicating to  a running Pharo VM; wrap the API in
a preprocessor that abstracts away the calls with objective-C syntax.

At the moment, Pharo is significantly simpler to get than GNUstep, and I
feel is far cleaner of an environment than GNUstep. I want to write
Objective C on Windows, but I can't without getting GNUstep, and I don't
want to get GNUstep because I have bad past experience with getting it to
run.

By creating such a framework, you can write programs in objective C, run
them through a preprocessor to turn objective-c constructs to the
corresponding message calls(via sockets/pipes/etc)/create corresponding
anonymous structs/dispatch tables. And then you can have a C program talk to
the Pharo VM. Perhaps even spawn a fresh Pharo VM(In this case it would
essentially act like Java, where java command spawns the virtual machines).

This would allow native code that seamlessly uses the Pharo VM to deal with
managed structures such a strings, hashmaps, arraylists(std::vector-like
structures), and interacts with them via sending messages.

In essence, it would be C-Pharo network interface which communicates via
passing JSON back and forth over a network, where the pharo structures would
be recovered from runtime by using a tagged union(variant) type, and sent to
pharo by being wrapped in a variant  type.

What do you guys think about this absurd idea?



--
View this message in context: 
http://forum.world.st/Can-Pharo-VM-be-altered-to-act-like-GNUStep-as-well-tp4918693.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.

Reply via email to