On 31 Jul 2017, at 04:02, Sage Gerard <zyrolast...@gmail.com> wrote:

> Hi!
> 
> New to Racket. Looking for expert opinion on my question, but I should give 
> some background.
> 
> I worked on software for about 11 years. Started on Win32 desktop 
> applications with C++ and then eventually moved to web, where I stayed on 
> front-end development for about 6 years. Moved to full-stack web dev then 
> finally architecture + web systems. I became a polyglot by necessity and am 
> now leading a UI team in a security startup.
> 
> Those of you working on the web know that Javascript went everywhere. In my 
> experience, I saw firms assume that they could now save on staffing by 
> normalizing to JS:
> 
> * Desktop devs (C++, C#, Go, etc.) were replaced by JS devs on Electron.
> * Mobile devs (Objective-C, Java Android SDK) were replaced by JS devs on 
> React Native or Cordova+Ionic.
> * Server devs (PHP, Python, Ruby, etc.)  devs replaced by JS devs on Node.js.
> 
> You get the idea.
> 
> The JS tooling explosion came tried handle the domain influx, only to 
> introduce the new problem of managing all of these domains. If you pull up a 
> large (~500k+ line) JS project, any one JS module could be read by a bundler, 
> a test runner, a transpiler, or Node. You have to maintain one script's 
> ability to function in N different domains.
> 
> This brings me to my questions, which I leave open-ended only because I'm not 
> experienced enough with Racket to be more specific. Please let me know if I 
> can elaborate more.
> 
> I found Racket while I was looking for a way to explicitly manage knowledge 
> domains while keeping a competitive edge. What I need your help with is 
> finding out if Racket is the tool in which I need to invest my time.
> 
> I see Racket can be used for web development, but is Racket really what I 
> need to meet the demands of multi-platform development while competing in the 
> market? Does Racket (or similar) sit at the next stage of evolution for the 
> multi-domain developer stuck in Javascript? If so, why?

There are some existing langs for compiling Racket to Javascript:

https://github.com/vishesh/racketscript
https://www.hashcollision.org/whalesong/

As far as I can tell, if you want facilities for iOS programming in Racket, you 
would have to write them yourself. Maybe it would be worth your while to do 
that.

If you want a lisp that has some existing tooling for every platform, your best 
option might be Clojure and Clojurescript. Clojurescript compiles to 
Javascript, has easy interop, has some integration with npm:

https://clojurescript.org/news/news

There is also a lot of material on using clojurescript to write iOS and Android 
apps using React Native:

http://cljsrn.org/

and apps using Clojurescript and React Native have been deployed to production. 
Clojurescript also has hot code reloading in both the browser and on iOS using 
figwheel.

Alan

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to