a cross-platform development day-dream

39 views
Skip to first unread message

Raoul Duke

unread,
Dec 8, 2014, 8:31:05 PM12/8/14
to augmented-programming, PiLuD
* I write my code in some HLL like Haxe or Shen where the HLL has
already been ported to the N languages/hosts I want to target. (iOS
Objective-C, Android Java or C++, Desktop Javascript HTM5, embedded
PIC C code, et. al.)

* When I need something 'concrete' that isn't in the HLL I can write
an escape-into-native-ffi-code type construct.

* The IDE helps me with code completion / guidance / whatever in
making the HLL interface to the 'native' stuff.

* It also gives me a great UI/UX wrt writing and managing the N
different implementations i'll have to write of said 'native' stuff.

* It manages the underlying project similarly, so that things are,
from the get-go, kept clean and sane and not all jumbled or inlined
nastily in any way (at least in terms of the source, if not in terms
of the final result).

* It also somehow helps me upload/download/integrate these 'native'
things with other people's repos of similar 'native' things.

¿or if you think that sounds utterly in vain and silly and dumb, do
you have thoughts about how best to day-dream about a great way to
really develop cross-platform stuff?

Dmitri Shuralyov

unread,
Dec 27, 2014, 6:40:03 PM12/27/14
to augmented-...@googlegroups.com, pi...@googlegroups.com
I think the general idea is cool and I have similar dreams. To that end, I recently toyed around with a small-scale but concrete implementation of this dream.

I was able to get to a point where I could write a simple OpenGL app and have (nearly/trivial differences) exactly the same code run as a desktop app (OS X, Windows, Linux) and in browser. The code is written in Go, and its normal compiler is used for native code, GopherJS is used to compile Go to JavaScript. Interfaces for GL, context management and event handling with multiple backends are used to abstract out the platform differences.

See https://twitter.com/shurcooL/status/548971444697194496 that links to some screenshots and details.

Josh Marinacci

unread,
Dec 27, 2014, 9:27:43 PM12/27/14
to augmented-...@googlegroups.com, pi...@googlegroups.com
I've been working on something similar for Javascript. The challenge is dealing with the parts that are not cross platform since those are often parts that are the most important. 

Sent from planet Earth
--
You received this message because you are subscribed to the Google Groups "Augmented Programming" group.
To unsubscribe from this group and stop receiving emails from it, send an email to augmented-progra...@googlegroups.com.
To post to this group, send email to augmented-...@googlegroups.com.
Visit this group at http://groups.google.com/group/augmented-programming.
For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages