13 ms·
It's Playtime - Light Table Playground released
- ya3r 14y agoI used it and it's not bad at all for a "playtime". But since I've no idea how to write code in Closure, it's not useful for me. What I want is a Python version. A Python enabled Light Table would definitely replace Python's REPL for me.
- jfoutz 14y agoBetter start coding!
- heretohelp 14y agoNot quite, Granger committed to making a Python version in the Kickstarter.
- Luyt 14y ago...and got enough funding for it.
- heretohelp 14y agoThe funding floor for Python is the commitment.
- eragnew 14y agoI can't wait to try this when I get home. Thanks ibdknox
- lispm 14y agoI somehow fail to see how it does something useful for recursive functions.
- jasonjackson 14y agoi'm interested to see his solution here. how will this development style mesh with infinite loops, and side effect code.
- kaonashi 14y agoClojure in general prefers the loop/recur construct over real recursion. You still can't see each iteration of the loop, though; perhaps that's what you meant by useful.
- lispm 14y agoanything where there is more than one invocation of a function
- dlitvakb 14y agoI just tried some factorial code... and it just shows the last recursion, but it is still nice that it evaluates on the spot
- munchor 14y agoFirst of all, I'm using Linux and it opened on Firefox instead of Chromium. Secondly, it seemed quite slow, and I can't use Ctrl+Shift+Up to select a paragraph above and Ctrl+Shift+Down to do the same to the paragraph below, like on Emacs. Either way, the live interpretation of Clojure code looks really great, keep on working and good luck!
- dmaz 14y agoFor Linux the script is doing "if chrome, else if firefox". Better to use xdg-open.
- munchor 14y agoSo it's looking for Chrome, a closed source browser that I'd never use, instead of Chromium. Too bad.
- sherbondy 14y agoSeems like you can use any browser you'd like by going to: http://localhost:8833/ http://localhost:8833/ once the server is up and running.
- munchor 14y agoThank you, that's cool! How can I kill the server, though?
- jurjenh 14y agolight server stop if you look through the script file, it has a series of options. light table light server start | stop | restart light update [version] but as far as I can tell it always checks for updates first and will install them before it checks any of the arguments passed.
- batista 14y ago>So it's looking for Chrome, a closed source browser that I'd never use, instead of Chromium. Too bad. TMI. You are of course free to use or not use anything you like, but the above sounds entitled and self-centered. At this point, who the duck cares if YOU are "never gonna use a closed source browser"? It's a post about a new editor in a pre-pre-alpha stage. Something like "Seems to be requiring Chrome. Why such a restriction?" would be far better, no entitlement, no open/closed source zealotry, not tied to specific personal preferences regarding source license, etc.
- jasonjackson 14y agoIt works perfectly on mac. Great work Chris, this demo gave me a sense of an Apple product "it just works", i typed in code and immediately it just worked.
- LaGrange 14y agoClick the full-screen view. While this is of course a purely aesthetic impression, the clean-slate feeling is wonderful.
- chrismetcalf 14y agoRandom, but does anybody know what color scheme his colors are based on? I'd love to crib that for Vim.
- mapleoin 14y agoThey're using CodeMirror for the in-browser editor and that's the default theme: https://github.com/marijnh/CodeMirror2/blob/master/lib/codemirror.css https://github.com/marijnh/CodeMirror2/blob/master/lib/codem...
- ibdknox 14y agothe parts that affect clojure have been changed a fair bit from the default theme.
- bittersweet 14y agoNot completely what you are looking for, but I found a Chris Granger inspired vim theme: https://github.com/chmllr/vim-colorscheme-elrodeo https://github.com/chmllr/vim-colorscheme-elrodeo
- mey 14y agoThanks for considering Windows user in this release.
- mey 14y agoHeads up, just sent an e-mail to feedback, with an error on starting up the system on powershell. Not sure if it's my environment or not.
- nuttendorfer 14y agoYou first need to allow remote scripts to be executed with: set-executionpolicy remotesigned Then you have to "Unblock" the downloaded ps1 file (Properties, click Unblock at the bottom). Next you have to make sure that java.exe is in your path. After that you are good to go!
- jink344 14y agoThis line does not appear to be working - any ideas? (new-object System.Net.WebClient).DownloadFile("http://temp2.kodowa.com/playground/light.ps1 http://temp2.kodowa.com/playground/light.ps1, "light.ps1")
- madsushi 14y agoFor me, the issue was trying to load Light Table via the 64-bit version of PowerShell. Switching to the x86 version (and setting the remote code signing) had me working in no time.
- taylorlapeyre 14y agoEverything so far works fanatically. Awesome job.
- dereferenced2 14y agoOn windows, I had to run set-executionpolicy Unrestricted since the light.ps1 isn't signed..
- le_isms 14y agoI find this to be a very efficient way to learn clojure :)
- alokm 14y agoIs there any interesting piece of code that might help me see this working to its true potential? I tried the factorial function expecting it to show all the recursive calls. What can I expect to see here? Call trace over multiple functions? EDIT: Just tried this , atleast this shows the last calls made to the functions (defn my-add [a b] (+ a b)) (defn fact[x] (if (<= x 1) 1 (* x (fact (- x 1)) ))) (my-add (fact (my-add 3 3)) (fact (my-add 2 5))) --------------- OUTPUT (defn my-add [||720|| ||5040||] (+ ||720|| ||5040||)) (defn fact[||1||] (if (<= ||1|| 1) 1 (* ||1|| (fact (- ||1|| 1)) ))) (my-add (fact (my-add 3 3)) (fact (my-add 2 5)))|| => 5760||
- lmarinho 14y agoA little example I've come up with is writing a bunch of tests for a function you are implementing and seeing them automatically executed. Try to fix fib by changing a, b and i values: (defn fib [n] (loop [a 1, b 1, i 1] (if (= i n) a (recur b (+ a b) (inc i))))) (= (fib 0) 0) (= (fib 1) 1) (= (fib 2) 1) (= (fib 3) 2) (= (fib 4) 3) (= (fib 10) 55)
- splattne 14y agoHello world: (javax.swing.JOptionPane/showMessageDialog nil "Hello World")
- mrdmnd 14y agoScript hangs on server launch process -- cat server.log yields a NoClassDefFoundError for java/util/concurrent/LinkedTransferQueue. That's pretty strange - any idea where my machine is borked?
- puredanger 14y agoThat class was added in Java 7 - maybe you have older Java?
- ibdknox 14y agoit was compiled for java 6, but should run on 7.. I have no idea what's going on there.
- nixarn 14y agoDoesn't work on my iMac (from '11 all software up-to-date). :S
- trotsky 14y agoI understand you're working fast and it's early. But not providing hashes and using a two stage downloader and not using ssl and using auto updates and not using code signing means that your app will now be the weakest link in terms of security for all but the worst configured computers. While it's almost certain no one is targeting you or your users now, that could change when people see such a weakness or could leave people open to local attackers that you'll never have a chance to notice.
- erikpukinskis 14y agoTo reply to the post you deleted about downvotes... I didn't downvote you, because I appreciate you bringing up a relevant technical concern. But sometimes people bring food over to my house and I just eat it. At the alpha stage of development, I think it's reasonable that your option is to not download.
- azth 14y agoWhat is a two stage downloader? Serious question :)
- trotsky 14y agoThe script that you download and execute goes back out to the internet to download the real executable, so it makes it (somewhat) difficult to review beforehand or to make sure you're running the official version
- graue 14y agoGlad I'm not the only one who thought this. I'd appreciate either signed packages or SSL, otherwise this is very, very insecure.
- technel 14y agoIf anyone is going to update their software manually, surely it's going to be HN/code editor users (I know I do). And anyway, it's a preview release that people won't be using as their main editor anyway. Install, play around, uninstall.
- 14y ago
- _feda_ 14y agoIs there an easy way to get the editor to evaluate a different language? It's just I don't really use lisp but would like to try it out properly. I've tried poking about int he ./light script but don't see anything. Fantastic software by the way. Could really see this having a big impact on a lot of people's development style.
- madsushi 14y agoLight Table is also being developed for Javascript and Python; but this alpha/early version is Clojure-only.
- why-el 14y agoA quick search failed me but I am pretty sure my question has been discussing elsewhere, in which case I would appreciate a redirect/summary. Is there a difference between LightTable and Emacs' eval-last-sexp and similar functions? What is LightTable supposed to add? besides support for Clojure.
- leif 14y agoIt's prettier. And it shows parameter expansion in some cases I think. And some day it will have some fancy-ass version of narrow-to-tag (which actually does sound like a real step forward).
- zgm 14y agoNice work, Chris! I can't wait to start learning Clojure with it.
- bceagle 14y agoHey, I can't figure out how to get this thing to work with C#. What the heck? j/k. Thanks, for the preview, guys.
- Cushman 14y agoWho thought "It's Playtime" was a better title for this than "Light Table Playground released"? Why does this keep happening to Light Table posts? Edit: Now "It's playtime - Light Table Playground released", after ibdknox altered the blog title. So... success? I still think it's ridiculous, though.
- ibdknox 14y agoI don't know, but it's starting to make me sad. It doesn't seem to fall under the "editorial spin" guidelines - if anything it was clarification. Hopefully the mystery will bring more people in? haha ;)
- seiji 14y agoIt's either an auto-renaming script or a human with the personality of an auto-renaming script.
- Cushman 14y agoMy current hypothesis is that it's an individual moderator (perhaps showing off) running a script without official sanction, hence the silence from the admins. The way the post on the subject[0] was buried without official comment after over 500 upvotes suggests a certain amount of institutional blindness. [0] http://news.ycombinator.com/item?id=4102013 http://news.ycombinator.com/item?id=4102013
- why-el 14y agoI think PG did comment on a subsequent post asking why post on subject[0] was taken down. I am not sure if commenting on a soon-to-be-killed post constitutes an official comment though, perhaps it was decided there is no need since according to policy meta-concerns should be dealt with using email.
- JoeCortopassi 14y ago
- samrat 14y agoI'm really hoping someone makes something similar to this for Vim.
- irahul 14y agoVimClojure https://github.com/vim-scripts/VimClojure https://github.com/vim-scripts/VimClojure is something similar for vim. LightTable seems to focus on showing execution trace which isn't always desirable(a function that delete files, gets file over the network, does a lengthy computation etc). VimClojure provides you completions, repl, looking up doc, going to source etc.
- samrat 14y agoI'm really hoping someone makes something similar to this for Vim.
- tlear 14y agoPerhaps provide some interesting piece of code to look at?
- endlessvoid94 14y agoLove it. As someone who's only played around with Clojure, it's a wonderful tool for learning / refreshing.
- deleted 14y ago[deleted]
- silasb 14y agoI was highly surprised this worked for Snow Leopard and it being almost 2 releases old. Nice job.
- ibdknox 14y agoA fair number of people were still on Snow Leopard (because Lion is a bit of a disaster), so we were very intentional about making that work.
- wiredfool 14y agoI'm getting this on Snow Leopard (x86): --- Checking for updates... --- Starting server... (this takes several seconds) --- Server up! The application cannot be opened because it has an incorrect executable format. But, hitting localhost:8833 does bring up the app.
- cellularmitosis 14y agoI'm seeing the same on my hackintosh (Dell Mini 10v).
- aliukani 14y ago> because Lion is a bit of a disaster How so?
- freyday 14y agoJava being required means this is a complete non-starter for me.
- edoloughlin 14y agoDo you have an ideological or practical opposition? Java is cross-platform enough for it not to be an issue. Are you memory-constrained?
- freyday 14y agoMostly due to the security risk. Especially on Windows. Even being a software developer (read: not your average computer user) and taking extra precautions (like click-to-run for java use in browsers) I've still gotten hit by malware that takes advantage of security holes in the Java runtime.
- __mark__ 14y agoYou could use a virtual machine running Linux for more security.
- cnf 14y agoI second the exact sentiment on OSX. And running a VM with linux (or windows, java is as much a pain on either platform) is a lot of effort for running an editor. As long as it needs java installed, I'm out...
- lucian1900 14y agoThen disable the java plugin for all your browsers. I think you can even disable java web start.
- deleted 14y ago[deleted]
- bjg 14y agoHow would you like them to run clojure, a JVM based language?
- camelite 14y agoHi, I'm a beginner programmer, I've played around with learning Lisp various time & just started the 4clojure problems. I was having issues getting a nice workflow going & getting diverted with IDE issues etc. This is wonderful. Thanks.
- vosper 14y agoI recommend trying Clooj, it's a simple editor and REPL that requires virtually no setup or configuration, and it provides enough functionality to be useful when working on the 4clojure projects. https://github.com/arthuredelstein/clooj/ https://github.com/arthuredelstein/clooj/
- Moocar 14y agoNice color scheme. Anyone know of a similar theme for emacs?
- jkbr 14y agoIt's quite similar to Solarized [0] for which there is emacs support [1]. [0] http://ethanschoonover.com/solarized http://ethanschoonover.com/solarized [1] https://github.com/sellout/emacs-color-theme-solarized https://github.com/sellout/emacs-color-theme-solarized
- boggzPit 14y agoNice, works very well....
- Estragon 14y agoIs it open source at this stage? (Found the source in the jar file, wondering about publishing modifications.)
- tubbo 14y agoThat's REALLY cool.
- jkbr 14y agoPromising. Already now it's quite useful for studying/debugging algorithms. Looking forward to Python support. Recursive call support would be awesome too.
- deleted 14y ago[deleted]
- pyrhho 14y agoSo far the biggest annoyance is truncating results.. It's cute, but not very useful when exploring output. For example: (.. System (getProperties)) produces a lot of output, and I'd like to look through it to find a property. Maybe a way to expand the output (like chrome inspector's javascript objects) ? That said, it's pretty cool, and really interesting.
- gnarmis 14y agoThis is great! I'm doing some stuff with SICP in Clojure, and this should be helpful for that. Btw, I was wondering if Dr. Racket's style of automatic parens-closing by just repeatedly pressing ']' (regardless of '(','{','[') makes anyone else wish other editors supported that feature.
- fdb 14y agoThe core Clojure language analyzer is open-source: https://github.com/ibdknox/analyze https://github.com/ibdknox/analyze
- ibdknox 14y agoactually I don't use any of that anymore. I'm using some hackery around the CLJS analyzer to make it all happen.
- greggaree 14y agoOnce you start coding, the right side quickly gets cluttered. Maybe functions that get invoked by new code entry on left side should be brighter than non-invoked funcs/macros etc.. Or non-invoked funcs etc. should get dimmer?
- hoprocker 14y agoTossing us a bone! Thanks!
- wildfennecfox 14y agoIt seems the HTML rendering is not part of this release? I am seeing HTML printed as a string instead of being rendered. Is there something that I am missing? Thanks!
- nyellin 14y agoThis is really sweet for a beta. If an inner function throws an exception, you should show the exception there, not just next to the toplevel function call.
- ReedR95 14y agoDoes anybody know if his color scheme exists for Textmate/Sublime Text?
- Suor 14y agoSorry, if this is a dump question, but how I can add some package and then require it in playground? I'm trying to (require 'http.async.client)
- tzury 14y agoI had to install Java on my Ubuntu box to evaluate this, and I am happy about it. In other words, it worth the effort[1]. Looking forward Python support. See how it will help me compose faster. [1] http://rootzwiki.com/topic/23008-howto-install-java-7-on-ubuntu-1204/ http://rootzwiki.com/topic/23008-howto-install-java-7-on-ubu...
- edwinyzh 14y agoGood to see the progress, Chris. I'm a kickstarter backer and I'm watching this project. If I ever get any inspirations for LIVEditor (my own live html/css/js editor) I'll give the credits here: http://liveditor.com/credits.html http://liveditor.com/credits.html
- lucian1900 14y agoThe server starts up for me with: > light table --- Checking for updates... --- Starting server... (this takes several seconds) nohup: redirecting stderr to stdout --- Server up! --- Starting Chrome But then I get a blank window in Chrome pointing to http://localhost:8833/ http://localhost:8833/. If I reload, it loads forever. I've stopped and started it a few times, and once I got a dark background, another time I got some Clojure code loaded as plain text. Running this on Ubuntu 12.04 amd64. It happens with OpenJDK (Java 6), OpenJDK (Java 7) and Sun (Java 6).
- Neener54 14y agoI ran into this problem as well, killed java and the light app and restarted (./light table) and it worked.
- addisaden 14y agoI really love the way, i can test coljuresnippets. Its really amazing and a really good expirience in debugging!
- addisaden 14y agoTested this on linux and a windowsmachine. On Windows, is there a way to quit, without deleting the process? - Lighttable get started in the background. Is there a shortcut for shutting down lighttable?
- arkx 14y agoI wish the instarepl supported doc and source, something all other Clojure REPLs seem to support. I've found both invaluable when working with Clojure.
- batista 14y agoA quick off topic question -- this is Java right? I have 2-3 years to catch up on the latest developments, but the font smoothing seems quite nice on OS X. Is this Swing based?