HNHacker News
TopNewBestAskShowJobs

bitsai

935 karma · joined May 14, 2010

submissionscomments
bitsai··on Inception - The movie, explained through C code
Fascinating. Would love to see this done with other languages/concurrency mechanisms, like Erlang actors, Clojure agents, etc.
bitsai··on 12 new file formats in the Google Docs Viewer
Does the Viewer work for you?

http://docs.google.com/viewer

bitsai··on MIT OpenCourseWare programming lecture videos (in Python)
Touche; title updated.
bitsai··on MIT OpenCourseWare programming lecture videos (in Python)
No problem :)

IMHO, Zed Shaw's "Learn Python The Hard Way" (free book) is also really good at teaching both Python and programming:

http://learnpythonthehardway.org/index

bitsai··on The Python Paradox is now the Scala Paradox
For Clojure, this is a good place to start: http://en.wikibooks.org/wiki/Learning_Clojure

I also like the lengthier, but most excellent, tutorial by Mark Volkmann: http://java.ociweb.com/mark/clojure/article.html

Project Euler worked well for me as warm-up exercises. And I just found a Wiki of Project Euler solutions in Clojure: http://clojure-euler.wikispaces.com/

bitsai··on Take the Greplin Challenge
Any idea how to go about reporting this? I couldn't find a bug report submission link, so for lack of a better alternative, I reported it in "Feature Requests":

http://news.ycombinator.com/item?id=363

bitsai··on Please tell us what features you'd like in news.ycombinator
The duplicate submission detector appears to be malfunctioning. For example, please see the following:

http://news.ycombinator.com/item?id=1772650 http://news.ycombinator.com/item?id=2218455

Sorry, I realize this is not a feature request, per se, but I didn't know where/how to submit bug reports.

bitsai··on Take the Greplin Challenge
This was posted a while back:

http://news.ycombinator.com/item?id=1772650

Something seems off with the duplicate link checker. Several times in the past week, I've submitted links only to find out later on that they were already previously submitted.

bitsai··on Why I absolutely love java
I don't know about the other lisp dialects, but the anonymous function is actually not needed in the Clojure version:

(filter even? [1 2 3 4])

bitsai··on Things to do with an old computer. Anyone can add more ideas?
In the same vein as "Cluster it", you could also use old computers as testbeds for experimenting with map-reduce frameworks like Hadoop.
bitsai··on Clojure + Processing + Live-coding at the REPL
I don't think it would be that difficult. The one big change I can think of is Clojure's pervasive immutability (a la Haskell). But even if you've never played with Haskell, I don't think it would take you too long to get comfortable with it.
bitsai··on A tour of the Clojure landscape
Great list, thank you.
bitsai··on A tour of the Clojure landscape
Right, I didn't mean to distract you from the original goal :) The directory would be very, very cool to have as well. Sticking with the watcher/forker theme, perhaps the overlap between two projects' watchers/forkers (either in raw numbers or as a fraction of the total) might be a way to gauge their relationship?

Can't wait to see what you come up with. Best of luck!

bitsai··on A tour of the Clojure landscape
I really appreciate this. Even though I'm a daily reader of the Clojure mailing list, some of these projects were completely new to me. For instance, I knew about Ring, Compojure, Enlive, and Hiccup, but I'd never heard of Sandbar before, which looks like a very useful piece of the puzzle.

Have you considered refreshing this 'map' periodically and/or adding this to either the Clojure website or wiki? I think that'd be a nice way to help people stay abreast of useful up-and-comers.

The vast majority of Clojure projects all seem to live on github. So, perhaps one way of picking out important projects with one/few contributors could be by looking at projects with high numbers of forks or watchers?

bitsai··on The Truth About Lisp
I read it as a tongue-in-cheek riff on many widespread/oft-quoted Lisp memes.
bitsai··on Video lecture series on programming languages and formal reasoning
Disclaimer: I'm no expert on PL research, and haven't read any of the texts you mentioned (bought myself Purely Functional Data Structures for Christmas, but it's sitting behind several other books on my to-read list). That said, the titles you mentioned reminded me of Steve Yegge's list of advanced reading for programmers:

http://sites.google.com/site/steveyegge2/ten-challenges

TaPL and PFDS are both on the list. Given what you wrote, I thought perhaps you'd be interested in some of the other entries, such as "Programming Language Pragmatics" or "The Essentials of Programming Languages".

bitsai··on Ask HN: your biggest Aha moment as a hacker?
1. When I grew up in Taiwan, I was an avid reader of a certain PC gaming magazine. In addition to the usual strategies and walk-throughs, every issue also contained hex editing guides for various popular games. I could follow the instructions well enough, but I didn't understand hexadecimal numbers, so it was just monkey-see-monkey-do. Then one day, while flipping through computer books at an underground store, I "got" hex numbers, and my mind was blown. A whole new game hacking vista opened up in my mind's eye.

2. While learning Clojure, I tried my hand at implementing the Lisp interpreter described in PG's "The Roots of Lisp" paper. There were many "aha!" moments along the way, but the biggest one came when I understood how I could define the "eval" function inside my interpreter, which allowed me to run a Lisp interpreter inside my Lisp interpreter (which was running in Clojure, which was running on the JVM, etc.).

bitsai··on Tell HN: Land of Lisp's Barski M.D. speaking about Clojure (11/18 DC area)
Ditto!
bitsai··on Lisp has too many parentheses...
For things like cadadr, I just chop off the "c" and "r", and use the middle part to figure out the sequence of car and cdr calls. (cADADr x) = (cAr (cDr (cAr (cDr x)))), which would be (first (rest (first (rest x)))) in Clojure.
bitsai··on Looking for cofounders? Forget meetups, use Github search queries
I got excited when I searched for "Edmonton", and saw a result for Clojure, but it turned out to be myself.
bitsai··on Home at Last, or, The Last Programming Language I Will Ever Learn
Just wanted to point out that you can use slime with clojure as well:

http://github.com/technomancy/swank-clojure

bitsai··on Poll: What programming language do you use for your app/startup?
Use VB.NET at work, (consequently) playing with Clojure at home.
bitsai··on Meetings are Toxic
A good set of guidelines on how to run meetings effectively:

http://artofmanliness.com/2009/11/17/how-to-run-a-meeting/

(Not a joke, despite the whimsical domain name)

bitsai··on Java Build Systems - a sad state of affairs
I believe on the Clojure side, leiningen is the preferred tool of choice:

http://github.com/technomancy/leiningen

bitsai··on Clojure++ (notes from Rich Hickey talk)
You can do optimized mutual-recursion in Clojure as well, using (trampoline). As with the optimized self-recursion using (recur), it's more work and not as nice as built-in TCO, but this is likely as good as it gets for now, given the current limitations of the JVM.
bitsai··on 30 minutes Lisp in Ruby (direct link)
Thanks for the tips. It's probably time for me to stop messing around and start reading the Lambda Papers in earnest...
bitsai··on 30 minutes Lisp in Ruby (direct link)
Righto. I had a working implementation that could expand 'x to (quote a) and '(1 2 3) to (quote (1 2 3)), but the case of expanding '''a to (quote (quote (quote a))) stumped me. I realize that ' is a special form like any other... except I haven't figured out how to implement any other special forms either :)
bitsai··on 30 minutes Lisp in Ruby (direct link)
Question about (a):

How do you handle special forms? I wrote a toy Lisp interpreter in Clojure, but couldn't figure out how to implement ', which I assumed should be implemented as a special form.

bitsai··on Why Clojure?
If you've been devouring every bit of Clojure-related writing (which I've also been trying to do), then as swannodette said to you elsewhere on this page, you very well may not be the intended audience :)
bitsai··on Why Clojure?
Swank Clojure is a server that connects SLIME and Clojure projects. Its github page has instructions on installation and usage, hopefully that will serve as a good starting point:

http://github.com/technomancy/swank-clojure

← PreviousPage 2 of 3Next →