The important point is to be able to effectively use a single (non-JS ^) programming language for mobile, browser and server-side. Ideally, to cut down on the technologies folks would have to come up to speed on and allow them to go deep with a particular language. This is beyond isomorphic apps, though, these are included. So, F# can theoretically run on the server, in the browser (via Fable [1]) and on mobile (via Xamarin Studio [2]). Clojure has a similar story since JVM languages can run on Android mobile phones/tablets and there is ClojureScipt [3]. These are just some examples of ones I am aware of. (I wonder if there is something like Fable for Swift?)<p>Is this a pipe dream, or is there real value to this approach?<p>^ Why non-JS? Mainly because I am interested in exploring other languages that can include statically typed, compiled languages.<p>[1] https://fsprojects.github.io/Fable/
[2] https://www.xamarin.com/studio
[3] https://github.com/clojure/clojurescript<p>Edit: styling, grammar
The ultimate dream (IMO) is to use CHICKEN Scheme for everything. You can use it on the web [1], transpile to JS [2], run on Android [3], and since it's so portable, you can basically use it anywhere C code can run (embedded, etc.).<p>In practice though, it's not so glorious. CHICKEN still lacks strong numerics libraries (think Numpy, APL), and SPOCK, while useful, isn't as rugged or battle-tested as say, Clojurescript. It doesn't transpile to the greatest JS code, and I don't believe it works with all browsers (docs seem to indicate it needs work [2]).<p>I think it could be reasonable to eventually get this level of support, but the Scheme community is already quite small and needs people to work on these sorts of things. Right now, I'd say it's unreasonable to write everything (JS and numerics are the big problem) in CHICKEN, but we're getting close.<p>[1] <a href="http://wiki.call-cc.org/chicken-projects/egg-index-4.html#web" rel="nofollow">http://wiki.call-cc.org/chicken-projects/egg-index-4.html#we...</a>
[2] <a href="http://wiki.call-cc.org/eggref/4/spock" rel="nofollow">http://wiki.call-cc.org/eggref/4/spock</a>
[3] <a href="https://github.com/chicken-mobile/chicken-android-template" rel="nofollow">https://github.com/chicken-mobile/chicken-android-template</a>
To clarify ... I am seeking advice on whether choosing a single non-JS language for "all" form factors is reasonable given existing languages, libraries, etc.