News for hackers. Stuff that matters.

gigamonkey

Re:Practical Common Lisp (2005) on Saturday January 08, 2022 @04:10PM (#29856313)
Hey, thanks everyone for your kind comments on the book. Kinda amazing that we're only a few years away from it's 20th anniversary. -Peter
Re:Practical Common Lisp (2005) on Tuesday December 06, 2016 @04:57PM (#13118683)
Totally. I had been thinking about writing a Haskell book but it seems that space is maybe well covered lately.
Re:Practical Common Lisp (2005) on Sunday December 04, 2016 @02:24PM (#13101310)
Well, these days I'm working at Twitter on our abuse problem. So that keeps me pretty busy. I did write another book, Coders at Work, a book of interviews with notable programmers.

I kind of suspect that if I write another book (as I hope to) that I'll continue along the trajectory from pure technical (PCL) to semi-technical (Coders) to something that might reach an even more general audience.

Re:Practical Common Lisp (2005) on Saturday December 03, 2016 @05:24PM (#13097795)
I plan to. Some day.
Re:Lisp Hackers: Peter Seibel on Sunday July 01, 2012 @10:04PM (#4186913)
As I think I mentioned in the interview, I've found that if I do this, by the time I'm done with my rewrite, I actually understand the original code too. So if I had to, I could throw away my new (better?) code and still benefit from a better understanding of the original code.
Re:Beyond Exception Handling: Conditions and Restarts on Monday November 14, 2011 @01:09PM (#3234983)
I believe Mesa did. On the other hand, Stroustrup claims (in the Design and Evolution of C++, I think) that the Cedar system written in Mesa basically never used the ability to restart as a reason why C++ doesn't have continuable exceptions. I've never been able to track down more information about that than his claim though.
Re:A Brief Rant on the Future of Interaction Design on Wednesday November 09, 2011 @11:48AM (#3216213)
You should check out the book The Myth of the Paperless Office. They report research where they gave folks tasks like writing a summary of several magazine articles and one group did it all on a computer and the other did it on paper and they watched how people actually worked. There was a lot of subtle physical interactions in the paper group, such as moving different articles closer and farther away on the table that the computer group tried to do analogues of and failed because of the limitations of the medium. So it's not just the eyes and ears.
Re:The problem with Amazon's Kindle Owners' Lending Library on Saturday November 05, 2011 @10:41AM (#3199827)
Of course in this case Amazon is in the middle, right? Suppose publishers demand to be paid by usage. Amazon can still charge their customers a flat fee--it just moves the risk of mis-setting the flat fee onto Amazon rather than the publishers.

Also, consider the incentives that a flat fee system sets up for publishers and writers: if you get paid per title rather than per reader, you're motivated to flood the market with books not to try to write a few really good books that lots of folks want to read.

Re:The Jobs book on Thursday October 27, 2011 @11:40AM (#3163671)
By "source materials" presumably he means the raw transcripts of the interviews, etc. Which doesn't seem too likely but it's at least possible.
Re:End of the line for Code Quarterly on Monday October 17, 2011 @06:51PM (#3122853)
Indeed, if you are interested in exploring interesting ways of publishing stuff with great design, get in touch with Adam; he's awesome.
Re:End of the line for Code Quarterly on Monday October 17, 2011 @06:07PM (#3122685)
Part of the problem may have been that I was coming more from a perspective of book publishing--the original idea was that CQ articles would be more like short books rather than long blog posts. And books you are paid by quarterly royalties. In fact, my payment scheme was pretty much identical to the Pragmatic Bookshelf model except that a given piece might be appear in multiple places--an issue of CQ, a collection of related articles, etc.

But maybe I didn't make that clear or maybe that made it even harder to find writers since it's more challenging to write long than short. (I did adjust back from my original idea of very long pieces but that didn't make enough difference.)

Re:SICP is Under Attack on Thursday August 04, 2011 @12:06PM (#2846523)
I don't know what, if anything, is going on at Berkeley, but Hal Abelson talked quite a bit about the switch from SICP to a different intro course at MIT when I interviewed him for Code Quarterly http://www.codequarterly.com/2011/hal-abelson/ and it wasn't about abandoning Scheme or "not teaching core computer science". (Well, maybe a bit less core computer science in the intro course but that was basically so that CS people could have more time later for CS without all that annoying EE stuff. And vice versa.)
But would a test case be a good example of using the code? As in, good for the purpose of understanding the code.
Re:CSS Lint on Wednesday June 15, 2011 @06:09PM (#2659247)
I'm curious what folks do who follow the no-qualified-headers rule. When they have things that act like headers but which need to be styled differently than the single header style used on the site, do they just use classed P's or DIV's? Confused.
Re:Why do C++ folks make things so complicated? on Wednesday June 15, 2011 @08:50AM (#2656845)
But you can tolerate ref counting pauses? (When you release the last reference to the last object keeping a large tree of objects alive and have a lengthy cascade of objects being freed.)
Re:Code Quarterly's Interview with Rich Hickey on Thursday June 09, 2011 @06:34PM (#2639037)
Haven't gotten around to it yet. Definitely on the list.
Re:Could Bill Gates write code? on Tuesday June 07, 2011 @08:50AM (#2628879)
Another similar story, from my interview with Guy Steele in Coders at Work:

This may seem like a terrible waste of my effort, but one of the most satisfying moments in my career was when I realized that I had found a way to shave one word off an 11-word program that Gosper had written. It was at the expense of a very small amount of execution time, measured in fractions of a machine cycle, but I actually found a way to shorten his code by 1 word and it had only taken me 20 years to do it.

Seibel: So 20 years later you said, “Hey Bill, guess what?”

Steele: It wasn’t that I spent 20 years doing it, but suddenly after 20 years I came back and looked at it again and suddenly had an insight I hadn’t had before: I realized that by changing one of the op codes, it would also be a floating point constant close enough to what I wanted, so I could use the instruction both as an instruction and as a floating point constant.

Seibel: That’s straight out of “The Story of Mel, a Real Programmer.”

Steele: Yeah, exactly. It was one of those things. And, no, I wouldn’t want to do it in real life, but it was the only time I’d managed to reduce some of Gosper’s code. It felt like a real victory. And it was a beautiful piece of code. It was a recursive subroutine for computing sines and cosines.

So that’s the kind of thing we worried about back then.

According to Ken Thompson, yes:

"Stroustrup campaigned for years and years and years, way beyond any sort of technical contributions he made to the language, to get it adopted and used. And he sort of ran all the standards committees with a whip and a chair. And he said 'no' to no one. He put every feature in that language that ever existed. It wasn’t cleanly designed—it was just the union of everything that came along. And I think it suffered drastically from that." (from Coders at Work)

Re:Optimizing Lisp Some More on Sunday March 27, 2011 @11:19PM (#2376991)
Last I knew, CLISP was based on a bytecode VM while SBCL and Clozure generate machine code. I think there may be some work on adding a JIT to CLISP but as far as I know it's still experimental.
Re:A Non-Programmer’s Apology on Saturday March 05, 2011 @01:31PM (#2291978)
> He has never taken a non-academic job in his life;

That's not quite right. He did at least consulting work outside of academia. As I quote him in Coders at Work: "For example, some of the best work I did for Burroughs Corporation was to debug their hardware designs. Their engineers would show me the specs for their computer and I would look at it and I would try to construct examples where they would be off by 1 or something. I got more than 200 bugs out of their B-5000–series machines before they went into production, although it had passed the simulators."

Re:Everything You Know About Fitness is a Lie on Friday March 04, 2011 @12:38PM (#2288922)
I'm pretty sure this is false. As I understand it hunters and gatherers lived about as long as we do. It was only with the invention of agriculture and the kind of societies (and diseases) it enabled, that our average lifespan took a nosedive which we are pulling out of now, thanks to modern medicine.
Re:Dog learns over 1,000 words on Monday January 17, 2011 @11:20PM (#2114563)
Uh, they use beagles for sniffing for all kinds of things: drugs, bombs, even termites.

That said, German Shepherds are an interesting case because, as I understand it, their breed standard is actually a behavioral standard: they have to be able to perform a certain level of obedience, tracking, and bite work (think big leather gloves) to get papers.

Re: You Should Self-Publish on Wednesday December 29, 2010 @11:32AM (#2049178)
Interesting. I've written two books for Apress and got essentially zero editorial help from them. A handful of writers I've talked to published by other tech publishers reported similar experiences to mine. Glad to hear they're doing something for somebody. But would-be authors should be aware that going with a traditional publisher isn't necessarily going to mean working with an experienced editor to craft your book.
Re:CAR, CDR, and Lisp... on Monday December 27, 2010 @11:29PM (#2044633)
Regarding the "hunks" he mentioned, here's what Guy Steele had to say about them when I interviewed him for Coders at Work: "I implemented a new data type called a 'hunk,' which was probably the biggest disaster in language design we ever put in. It was essentially a cons cell with more than two pointers. It was a desperation move because we were running out of address space on the PDP-10. Recall that the -10 only had an 18-bit address space. In a list, 50 percent of the pointers were dedicated to just maintaining the structure of the list, whereas with a threaded set of hunks, maybe only one-eighth of the pointers were dedicated to the threading of the chunks so you’d get better memory usage that way."
Re:Ask PG: Lisp vs Python (2010) on Monday October 18, 2010 @12:49PM (#1804180)
I've had a similar experience, lately while writing and editing pieces for Code Quarterly--I've written the same basic algorithms in Javascript, Python, and Common Lisp to play around with them. I find the Python the best vehicle for conveying the algorithms despite being more fluent in Common Lisp.

But I've also been astounded at how slow CPython is compared to SBCL (the Common Lisp implementation I use) when I have to do long runs to gather data. (For the things I've been playing around with, my Common Lisp implementations have been something like 5 to 20 times faster.)

Re:Announcing the inaugural Code Quarterly Code Challenge on Wednesday September 01, 2010 @11:38AM (#1653060)
Yeah. I'm not crazy about the XML thing either (as I noted in a footnote) but all we're using it for is a trivial way to dump an AST that's easy to specify.
Re:The Pen Gets Mightier on Thursday August 12, 2010 @11:02PM (#1599935)
I could imagine this being useful for journalism--you're interviewing someone and recording the whole thing but taking notes about particularly interesting bits. Now it's easy to jump from the notes to the audio recording.
Did you enter an email address? (And possibly leave the field after you've entered it?)

Older »