l0stman
Re:Thoughts on Matasano Security’s Critique of Javascript Cryptography
on Saturday May 25, 2013 @08:25PM (#5769471)
Well, the wayback machine is your friend. http://web.archive.org/web/20111001124736/http://log.nadim.c...
Re:RethinkDB: An open-source distributed database built with love over...
on Friday November 09, 2012 @01:15PM (#4763993)
I was just wondering if you've planned on open-sourcing the code since the very beginning or if the idea came much later. Anyway congrats on launching.
Re:Jessica Livingston: What Goes Wrong
on Friday October 26, 2012 @06:28AM (#4701602)
Well, played. For a couple of seconds I was wondering why I had this impression of deja vu then I found this (http://hackerne.ws/item?id=4692794). I burst out laughing.
Engineering a List Merge Sort
How to build a portrait with dice
OpenBSD 5.0 Released
How to trick C/C++ compilers into generating terrible code?
What's The Greatest Software Ever Written?
Old programming habits die hard
Pragmatic Parsing in Common Lisp
How to fix a compiler bug in SBCL
FreeBSD on EC2 FAQ
Re:Quicksort is the new Hello World
on Sunday December 12, 2010 @01:11AM (#1996611)
I had to look up what the `:' operator does and it adds an element to the beginning of the list. So the last line should be
split (left, right) x = if x<p then (x:left, right), else (left, x:right)
Re:Quicksort is the new Hello World
on Saturday December 11, 2010 @06:26AM (#1994641)
qsort :: Ord a => [a] -> [a]
qsort [] = []
qsort (p:xs) = qsort lesser ++ [p] ++ qsort greater
where
lesser = filter (< p) xs
greater = filter (>= p) xs
I know nothing about Haskell but I don't think this code implements
the original quicksort algorithm which sorts the input in-place.
Moreover the two-pass of filter over the list and the concatenations
cause unnecessary overhead. Thus, even if the sample code is simple
and elegant, a real-world implementation would surely be a bit longer
than the given example.
Re:Ask HN: What are you reading right now?
on Wednesday November 03, 2010 @05:53PM (#1866681)
Just finished ``On Lisp''. This is an advanced Lisp book and shouldn't
be your first one. It assumes some familiarity with the language so
you're better of reading ``Practical Common Lisp'' first if you're
diving into Lisp for the first time. The book focuses almost
exclusively on advanced use of macros and metaprogramming.
Interestingly, I've also read SICP in parallel -- currently reading the last chapter -- and there's some overlap in the topics treated in the two books. I'm also walking through CLRS and TAOCP at the moment, albeit reading the latter with a slower pace compared to the former.
On the non-technical side, I'm reading ``Drawing with the right side of the brain'' by Betty Edwards. I've picked up this book since I've decided to resume drawing one year ago. I highly recommend it if you struggle to draw a realistic rendering of a real life object or a landscape.
Re:Git info in your ZSH Prompt
on Friday October 08, 2010 @04:57AM (#1771048)
Just add the following lines in your .bashrc:
export GIT_PS1_SHOWDIRTYSTATE=yes
export GIT_PS1_SHOWUNTRACKEDFILES=yes
Re:Git info in your ZSH Prompt
on Thursday October 07, 2010 @04:42PM (#1769433)
Note also that there's a more feature complete version that accomplishes the same tasks in the contrib directory of git (http://git.kernel.org/?p=git/git.git;a=blob;f=contrib/comple...).
It's implemented in bash but I use it with almost no modification with the Korn shell.
A Web-Server in Forth
Poetic Machine Translation
Small and useful assembly programs
Planning is overrated. The best performers seesaw between ideas and actions.
Writing concurrent programs in Common Lisp
NoSQL Storage Systems Never Violate ACID. Never? Well, Hardly Ever
Ken Thompson: Regular Expression Search Algorithm [pdf]
Re:Why GNU grep is Fast
on Monday August 23, 2010 @08:30AM (#1626574)
Actually I posted this article yesterday
http://news.ycombinator.com/item?id=1624402 but I went unnoticed. The
author was working on search feature for his Hex editor and tried to
outperform GNU grep by using Boyer-Moore. After multiple attempts, he
finally discovered the hard way all the tricks used by Mike Heartel to
make GNU grep run faster than his implementation.
The Treacherous Optimization
Angels asking for control
Barrier: Multithreading bugs are very delicate
Thanks for sharing this, it was extremely brave of you to do so.
Speaking of one's failures in public requires a high degree of
courage. Besides, from reading your other posts on HN, I thought you
were what I would generally consider a successful guy. But like you
said, there's always a flip side in every situation.