5 ms·
Hoplon: A Simpler Way to Program the Web
- STRML 13y agoLooks like a great project. Is it just me, or does it seem like cljs is making a big stir these last few weeks? After a few years with NodeJS, I've always wanted to do some more purely functional programming; I've seen a lot of buzz about Clojure/cljs and have started considering it for my next project.
- nickik 13y agoClojureScript specially has taken off. This project, then you have the extreamly cool (but a bit hard to understand) pedestal (https://github.com/pedestal/pedestal https://github.com/pedestal/pedestal), the Om (https://github.com/swannodette/om https://github.com/swannodette/om) library has made a splash even in the JS community. A lot of exitment around core.asnyc (witch allows CSP like Go) on the web.
- _xczx 13y agoI'm really looking forward to pedestal. From what I understand the team is vacationing, but that there are plans to integrate core.async. I do wish that its development were a bit more public, though.
- nickik 13y agoI would probebly not bother with following the devlopment to closly, I will wait until they feel like it is realy for early testing. Look at this talk, http://www.infoq.com/presentations/pedestal-clojure http://www.infoq.com/presentations/pedestal-clojure, I think it gives the most up to date ideas about pedastal and the next version.
- babby 13y agoLightTable is written in clojurescript and it's a first-class language for the IDE (The core devs prefering it I guess). Id like to use LightTable but I'm more of a CoffeeScript guy and CS isn't built in yet. Apparently to add support you pretty much need to know ClojureScript to create a plugin, or something around that. I'll gladly write the CoffeeScript syntaxer, highlighter and a theme, as I run my own flavors in Sublime. Just need the integration to be there. Someone help! (Please go learn ClojureScript and PR to LightTable immediately OP) https://github.com/LightTable/LightTable/issues/458 https://github.com/LightTable/LightTable/issues/458 :)
- jamii 13y agoLight Table already has coffee-script syntax highlighting etc from CodeMirror. What's missing is support for evaluation and auto-completion. Some people have written plugins in pure js (eg https://github.com/joshuafcole/ https://github.com/joshuafcole/).
- deleted 13y ago[deleted]
- krrishd 13y agoI feel like despite the great things these projects are trying to achieve, in the end they are just hacks. I think its time we try to shift the web standards to meet modern needs rather than trying to build around the limitatns right now. The web is the future, and there's no point putting off the inevitable.
- morganherlocker 13y agoAt the same time, developers need to ship using the tools that are currently available. I think a multi-pronged approach is inevitable. Of course, I say this as someone who avoids this sort of tool as a general rule, since it seems risky to use in production, so I definitely see what you are saying. On the other hand, this sort of thinking would probably have been an argument against jQuery several years ago, and despite the fact that it was a 'hack' over the awful js standard api, it became a de facto standard through brute force of popularity.
- ubernostrum 13y agoI think its time we try to shift the web standards to meet modern needs But when we try that, everyone piles on about how it's out of scope for web standards, and complains about how it's being done, and... Just makes you want to throw your hands up.
- prodigal_erik 13y ago> Reload this page with JavaScript disabled and see how the content was "prerendered" at compile time. To their credit, the page is not blank, unlike a lot of "web" authors out there. Unfortunately there are several links that point to invalid and nonexistent fragments like #/home/ instead of actual elements of that or some other document, which really means the framework is happy to make a siloed javascript app and does not ensure you are responsibly making all your content available as part of the world-wide web at some stable URL where third parties can reference it. tl,dr: this encourages single-page apps which will be the death of the web.
- nnq 13y ago> single-page apps will be the death of the web What en earth makes you think that? Yeah, the current way of doing SPAs without fallback for non-js clients is horrible and the alternative of a two-way site too much work. But the solution is obvious: if what you serve is of any meaning to anyone else, you also have some sort of content consumption API. Sooner or later we'll standardize some RESTy way of doing it for apps, and for blogs and magazines RSS/Atom feeds are already good enough content-consumption pseudo-APIs. The API will be the Javascript-less version of all sites, and all sites will have an API. Then people will make UIs for the content consumption parts of these (pseudo-)APIs, and these UIs, even if they run themselves in browsers will become the new "browsers" and gain their own scripting level features, while "old browser apps" will become today's equivalent of desktop apps. It's not "death" of the web, just "endless, infinite pain" for us developers working in its perpetual shifting front-end... it's way worse than death! :)
- hacknat 13y agoI like the name.
- codereflection 13y agoLost me at " Use a spread�sheet-like dataflow pro�gram�ming en�vi�ron�ment to man�age client state."
- raphinou 13y agoIt's a pitty they do not show how client server communication is done. Eg how, after a click on a button, do i query a db and display its result in the page.
- terhechte 13y agoThere's an examples Folder on GitHub with a client/server chat demo. That really helps figuring the RPC part out
- weddpros 13y agolink : https://github.com/tailrecursion/hoplon-demos/tree/master/castra-chat https://github.com/tailrecursion/hoplon-demos/tree/master/ca...
- weddpros 13y agoHere's a simple example (in their repository) : https://github.com/tailrecursion/hoplon-uberwar https://github.com/tailrecursion/hoplon-uberwar
- hmans 13y agoNo.
- toisanji 13y agoDoes this use react from Facebook? React is supposed to be the last missing piece for clojurescript.
- Touche 13y agoDoesn't look like it. Additionally it appears to be conceptually heavy. It's hard to convince Clojure users to use anything but small libraries, even Noir (a Sinatra-like framework) was abandoned for this reason. This might be really good but the amount of buy-in required is a hard sell to the community.
- smrtinsert 13y agoit has its own impl of rp that doesnt seem as advanced as react. I think there have been some performance issues as well.
- michaniskin 13y agoHoplon's reactive model is quite different from React's. We think it's more advanced :). There are no "performance issues" reported lately (there was some confusion with an old proof-of-concept demo, but any recent version of Hoplon will provide acceptable performance). Hoplon isn't optimized for "perf" in rendering things on the screen. Hoplon is designed to uncompromisingly optimize developer performance. I know that when my users are presented with a choice between more rendering perf and added features in the application it's a no-brainer. They just need good performance, but great features. Hoplon presents a model in which web designers and programmers can coexist without friction, and it provides the underlying foundation for developing truly powerful abstractions (like components, for example) that are composable in ways that are impossible in other systems.
- nickik 13y agoWhat you are looking for is this http://swannodette.github.io/2013/12/17/the-future-of-javascript-mvcs/ http://swannodette.github.io/2013/12/17/the-future-of-javasc...
- ossdev1 13y agoThe funny thing is that even with "Single-page applications, not documents" you still have a document... your "single-page". Besides, that's NOT dataflow programming (see old papers for Fabrik, Prograph, InterCons, etc).
- jw- 13y agoFor those interested in the learning more about single language web applications the Links project (http://groups.inf.ed.ac.uk/links/ http://groups.inf.ed.ac.uk/links/) has been going for some time with quite a few research publications.
- acconrad 13y agoSo what is the performance benchmark for Clojure / ClojureScript? I've seen a lot of buzz for Clojure as of late, but given how bloated the web is at the moment, until I see Clojure (or Haskell) make leaps-and-bounds better performance in return for the pain of learning the language (and the barrier to functional programming), how can we hope to mass-adopt this technology?
- jonnybgood 13y agoPerformance isn't everything and in many cases not that important. Clojure and Haskell make leaps-and-bounds better performance than Python and Ruby which both have mass adoption.