Ask HN: What are the pros/cons to using a single non-JS lang to rule them all?
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?)
Is this a pipe dream, or is there real value to this approach?
^ Why non-JS? Mainly because I am interested in exploring other languages that can include statically typed, compiled languages.
[1] https://fsprojects.github.io/Fable/ [2] https://www.xamarin.com/studio [3] https://github.com/clojure/clojurescript
Edit: styling, grammar
4 comments
[ 3.4 ms ] story [ 21.7 ms ] threadIn 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]).
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.
[1] http://wiki.call-cc.org/chicken-projects/egg-index-4.html#we... [2] http://wiki.call-cc.org/eggref/4/spock [3] https://github.com/chicken-mobile/chicken-android-template