6 ms·
WeScheme (web IDE)
- sheffield 15y agoTry this Hello world: (js-big-bang 0 ;; initial world (on-draw ;; the dom tree renderer (lambda (w) (list (js-p '(("id" "myPara"))) (list (js-text "hello world")))) ;; the css renderer (lambda (w) '(("myPara" ("font-size" "30"))))))
- bhickey 15y agoOriginally we had planned to include a structured editor, along the lives of DivaScheme and Scratch. This was shortly before widespread support of HTML5, so working with what we had I implemented it on top of `contenteditable`. In the end it just wasn't polished enough to ship.
- dexen 15y agoStrangely reminds me of the prediction Steve Yegge, that web-based environment is rising to status of serious competitor to {X,}Emacs. http://steve-yegge.blogspot.com/2008/04/xemacs-is-dead-long-live-xemacs.html http://steve-yegge.blogspot.com/2008/04/xemacs-is-dead-long-...
- djm 15y agoI haven't had a chance to look at this properly yet but maybe somebody can clarify a few things. This lets me do scheme->js in the browser using moby, which is implemented in racket. So my code gets converted to js on the server hosting this site. Does this mean I can (require ...) other racket libraries as well? Bookmarked for later.
- djm 15y agoOK, couldn't wait. require doesn't seem to work but that's as expected since they don't know what I might load. moby documentation: http://planet.racket-lang.org/package-source/dyoo/moby.plt/3/10/planet-docs/manual/index.html http://planet.racket-lang.org/package-source/dyoo/moby.plt/3... World: http://world.cs.brown.edu/1/htdw-v1.pdf http://world.cs.brown.edu/1/htdw-v1.pdf I'm playing now. Will post some code when I have it working.
- dyoo 15y agorequire is currently not working in WeScheme. We'll revisit the design of this in a few weeks. In the context of WeScheme, it would be very cool to be able to treat other people's programs as libraries and be able to require them.
- drblast 15y agoThank you so much for doing this. I've been hoping someone would write a decent online REPL for a long time; hooking it into Google Docs sweetens the deal.
- bhickey 15y agoYou're welcome! :) Much of the credit goes to Danny Yoo for Moby -- http://github.com/dyoo http://github.com/dyoo
- tychoish 15y agoMichael Cote at redmonk has brought this up a few times this year. Most recently, <http://www.redmonk.com/jgovernor/2011/06/24/ide-as-a-service-daas-hawt-and-some-enterprise-opensocial-thawt/> http://www.redmonk.com/jgovernor/2011/06/24/ide-as-a-service...; Truthfully, I don't know that it's going to kill conventional editor or editing habits (and by the time it does, I suspect that web-based IDEs will look significantly less like today's web-apps than they do today) and more that this technology will find a niche in code review, or version control interfaces, or something like that, but it's a nifty idea.
- rynop 15y agoHow is this different than http://cloud9ide.com/ http://cloud9ide.com/ ? Cloud9 seems to be much more mature and feature rich as well.
- djm 15y agothis is for writing scheme and compiling to js for running client-side. Cloud9ide seems to be an ide for writing directly in js or php/ruby etc.
- shriramk 15y agoAlso, WeScheme goes to great pains to implement the "world" computing model, rather than only exposing the underlying computational model. Implementing this atop JavaScript is a fair bit of effort. That's where our resources have gone; Cloud9 has spent its effort elsewhere. You can read about the model here: http://www.cs.brown.edu/~sk/Publications/Papers/Published/fffk-functional-io/ http://www.cs.brown.edu/~sk/Publications/Papers/Published/ff... A fun exercise for hackers is to guess the consequences of this for running atop JavaScript.
- TeMPOraL 15y agoRegarding comments about Web IDEs replacing Emacs, I don't see how this could happen with current editing capabilities of those IDEs. While they might be better at storing your sources safely, their editing capabilities just suck compared to Emacs or Vim. Working with code isn't only about entering text.
- supersillyus 15y agoVery cool. I tried to run the form example in the API documentation, and it complains that js-bidirectional-input is undefined. Am I doing something wrong?
- djm 15y agoIt's not you, I get the same error.
- dyoo 15y agoApologies; some of the documentation is outdated. I'm in the middle of a revamping of the runtime and its libraries, which will hopefully be released in a few weeks.
- dyoo 15y agoMy apologies! I had to rip out js-bidirectional-input out, and didn't update the documentation to reflect that. The documentation linked from the "API" link there is unfortunately stale, and I haven't had the time to update it. (Most of my time right now is dedicated to a new version of the evaluator, discussed at the bottom of this post.) The Wescheme environment is meant to pair with the curriculum of the Bootstrap project (http://www.bootstrapworld.org/ http://www.bootstrapworld.org/) Here are some examples that highlight the features in WeScheme. Each includes both a runner and a live editor link to the source code. A simple game: http://www.wescheme.org/view?publicId=messy-humor-truck-adopt-outdo A sierpenski triangle program: http://www.wescheme.org/view?publicId=pasty-brawl-frank-vomit-would A more substantial demo of the image libraries: http://www.wescheme.org/view?publicId=haste-foggy-grief-hatch-gloom A simple 1-tick-per-section counter that resets when you press the button: http://www.wescheme.org/view?publicId=queer-decay-slush-speck-stage I'm in the middle of a rewrite of the underlying evaluator and libraries during this summer (http://hashcollision.org/whalesong http://hashcollision.org/whalesong), and hope to deliver in the next few weeks so that people can play with it.
- alttab 15y agoTo gain any sort of traction, I suggest allowing more choices than code, log-in, or watch a video. For someone who doesn't necessarily want to code scheme right away, log-in with their account, or put headphones in to watch a video - you've lost them immediately. Never to come back. The option that is missing - let me read about it.
- shriramk 15y agoYes, we will. In the meanwhile, you can read about it here: http://www.cs.brown.edu/~sk/Publications/Papers/Published/yskf-wescheme/ http://www.cs.brown.edu/~sk/Publications/Papers/Published/ys...
- deleted 15y ago[deleted]
- jeeve 15y agoPing pong game http://augreduvent.limewebs.com/Informatique/ping-pong/ping-pong.htm http://augreduvent.limewebs.com/Informatique/ping-pong/ping-... Source code : http://www.wescheme.org/openEditor?publicId=screw-salon-cigar-liter-biped http://www.wescheme.org/openEditor?publicId=screw-salon-ciga...
- deleted 15y ago[deleted]
- deleted 15y ago[deleted]
- deleted 15y ago[deleted]
- deleted 15y ago[deleted]
- matthiasf 15y agoYou can hear more about Danny Yoo's new compiler at RacketCon (http://con.racket-lang.org/ http://con.racket-lang.org/), taking place at Northeastern on July 23 & 24.