Seems like the core of it is that they wanted to be rooted in a bigger
community, with the associated libraries, etc.
But if the Lisp version is more readable and extensible, it should be
easy to mirror whatever features the Python people will add. ;)
That'd be more of a nice showcase.
--
Majority, n.: That quality that distinguishes a crime from a law.
Sounds like they had two very valid reasons to switching away from Lisp:
* A lack of cross-platform threading and networking libraries.
* A lack of an existing community on which to borrow code examples from.
The lack of cross-platform threading and networking must be a huge pain
when developing a web application.
-- MJF
IMO they started with Lisp just to please PG. Their reasons to switch are
pretty lame. Don't tell me they couldn't afford to buy a commercial Lisp for
instance.
Marc
Sort of as an aside here, but has anyone else wasted a little time
over on c.l.p lately and seen the ongoing thread about poor
"packaging" for python and its libs? If you substituted "Lisp" for
"Python" you could easily be confused into thinking you were on c.l.l,
both from the "trolls" writings and the responses to them. Go figure.
/Jon
--
'j' - a n t h o n y at romeo/charley/november com
> I might add... if the folks in a PG-associated startup aren't convinced
> to stick with Lisp, it is going to make other folks wonder why they
> should bother even considering it.
Why? PG seems to really like Python and is also on record as not much
liking Common Lisp. May not be surprising at all given this.
That is completely false. We used Lisp because I was interested in
Lisp, and that was long before the SFP or reddit. I still love Lisp
Yes, we could *afford* to buy a commercial Lisp, but we didn't want to.
Especially if you deploy on exactly one operating system and one hardware
platform, this is a huge pain. Also if you take from the community, but
aren't prepared to give back. And also when you got funding, but
you prefer to spend the money on girls/games/drugs/music/... and not
commercial software. ;-)
But maybe with a rewrite the software gets useful. I haven't
yet got an idea what that site could do for me. I'm no expert
on this, but what would be the advantage over, say, http://del.icio.us/ ?
Steve Huffman
> I don't know why you necessarily need threads for doing I/O and
> network bound work.
>
> I tend to do things like that in an event-driven fashion, even in
> C++, where pthreads is just a few letters away.
Multiplexing activity on several sockets (C: select / poll / epoll)
is not provided by portable Common Lisp either.
--
__("< Marcin Kowalczyk
\__/ qrc...@knm.org.pl
^^ http://qrnik.knm.org.pl/~qrczak/
So what? It isn't like they had to write a software and could not find
any Lisp that made it able to - they *did* write the software and it
obviously was working. So I fail to see any reason to blame the library
or Lisp implementation availability for the rewrite.
Peter
--
Ltk, the easy lisp gui http://www.peter-herth.de/ltk/
http://paulgraham.com/hundred.html
http://paulgraham.com/books.html
http://paulgraham.com/lisp.html
> Yes, we could *afford* to buy a commercial Lisp, but we didn't want to.
Why not?
Zing!
> Yes, PG has a very strong dislike of Common Lisp. For instance:
Never said that. Think "relatively speaking".
More discussion at Lemonodor, mentioned stability problems. After
pointing out that Edi Weitz is an "army-of-one producing good Lisp
libraries" (w00t!), one of the Reddit guys said the issues "weren't
particularily Lispy":
"The biggest trouble that plagued us was that we could never quite get
Lisp reddit stable enough to sleep at night. There were weird threading
issues that would bring the site to its knees a couple times a day and
required constant monitoring."
Tayssir
> The lack of cross-platform threading and networking must be a huge pain
> when developing a web application.
why? the neat thing about a web application is precisely that you don't
have to care about portability since it runs on your server (your
choice of architecture/os/environment)...
when I read the initial article, I thought, well, they are becoming
successful, investors are bringing in the MBAs/suits, and lisp is not
really high on the list of things said suits read on the fancy glossy
magazines they peruse at their country clubs between two 'high level/big
picture' meetings...
--Sylvain
<snark>Right, but it's in ANSI Python, so they had to switch.</snark>
People write things like this in C++ which dosn't provide this in a
portable
way either.. If you choose to stick with a commercial vendor they provide
portable access to these facilleties.
Just like GCC is just only one C++ compiler ACL is just one implementation
of
CL.
Not sure what you mean by web applications either.
If you are writing a server side application it only needs to
run on that server. In the cases I have wittten web applications
I have used Java on the client side and Lisp on the server side.
They then communicate using XML-RPC (Thinking of extending to SOAP now
though)
AJAX makes even less requirements on the client side.
Only when writing client/server applications over a non-homogenous network
does this realy become a problem. These are rearly web app's though.
--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
I think I can do it in one. "Reddit is rating-driven group
bookmarking."
I have always failed to see where the business plan is here. They don't
appear have enough information about the people involved to do any kind
of directed advertising, and any kind of for pay additional service
seems like it will be ignored. They don't even have any kind of tagging
facility to implicitly create an advertising demographic.
I would guess they can try to learn something about what a person
likes/doesn't based on article ratings, but without knowing why an
article is rated the way it is this is also kind of pointless. I rate
down posts that have poor spelling, or lots of ads. Try figuring that
out to advertise to me, it has almost nothing to do with the content of
the site in question.
Unless they can figure out something better fast reddit is headed for
serious problems. Somehow I doubt "rewrite the site in python because I
am too lazy to run a virtual machine[1]" is the solution.
[1] Yes, I know there is more to it than just that. I mention it only
because it is a faster way of solving this issue than rewriting your
entire codebase.
Actually, I've been playing around with it for a few days and it's done
a pretty decent job of pointing out some cool articles I'd not seen
before, hence my blog posts being rather more numerous than is the norm.
--
Robert Uhl <http://public.xdi.org/=ruhl>
It took people a long time to figure out which machine was doing it, and
even longer to figure out how. But for some reason it didn't take them
any time at all to figure that I'd done it. --Paul Tomblin
Well, as the guy pointed out he wanted to develop locally on his Mac and
deploy on their FreeBSD box. Dunno why they weren't using SBCL, but
possibly it lacked some feature they needed or thought they needed.
--
Robert Uhl <http://public.xdi.org/=ruhl>
Facts do not cease to exist because they are ignored.
--Aldous Huxley
Netflix seems to do pretty well at recommending films based on
like/don't-like ratings. Granted, theirs aren't boolean, but that might
actually make the math simpler (not certain about that, since I don't
know much at all about that area). Perhaps they plan on serving up paid
links which one might like. This isn't actually a foolish idea--most of
us like finding out cool stuff we're interested in.
For example, if when I visited reddit.com they showed me a few links on
where to get a honest-to-goodness signet ring (not the dopey
engraved-flat-surfaces, but a real carved, mirror-image,
sealing-wax-impressing signet), I'd be a happy man. Google's turned up
a few, but there must be more out there.
--
Robert Uhl <http://public.xdi.org/=ruhl>
Isn't it amazing how a large number of evil morons can give the appearance
of being a single evil genius? --Mel Rimmer
> "John Thingstad" <john.th...@chello.no> writes:
>>
>> Not sure what you mean by web applications either. If you are writing
>> a server side application it only needs to run on that server.
>
> Well, as the guy pointed out he wanted to develop locally on his Mac and
> deploy on their FreeBSD box. Dunno why they weren't using SBCL, but
> possibly it lacked some feature they needed or thought they needed.
If they were using TBNL, SBCL's lack of thread support on FreeBSD
would have been something of a showstopper. (Lack of thread support
on OS X, too, for that matter).
Christophe
Since both MAC-OS10 and freeBSD have a BSD kernel why not hack
SBCL to provide threading under freeBSD so that SBCL would support
TBNL on both platforms. This would be a great service to
the Lisp comunity AND solve the problem..
> On Wed, 07 Dec 2005 10:15:00 +0100, Christophe Rhodes <cs...@cam.ac.uk>
> wrote:
>
>> If they were using TBNL, SBCL's lack of thread support on FreeBSD
>> would have been something of a showstopper. (Lack of thread support
>> on OS X, too, for that matter).
>
> Since both MAC-OS10 and freeBSD have a BSD kernel why not hack
> SBCL to provide threading under freeBSD so that SBCL would support
> TBNL on both platforms. This would be a great service to
> the Lisp comunity AND solve the problem..
Who, me? Because I have no need of threads on BSD or OS X, and I have
no commercial incentive to develop them either.
If you meant the developers of reddit instead, why on earth would they
do that? They rewrote their site in a language they knew, using a
framework written by one of their close acquaintances, so they now
have personal, close support on one of their core components. It took
them two weeks.
Would you like to estimate how long it would take you to implement
SBCL threads under OS X and FreeBSD? Supplementary question: estimate
how long it would take the two(?) developers of reddit.com to do it
instead (you might need error bars on this estimate). Using this
answer, consider just how insane the reddit developers would have had
to be to go down your suggested route.
Christophe
Basically SBCL should work with pthreads, and those are quite portable.
Maybe one or two months ago someone in here said that SBCL's threads
need some Linux-specific features (user-space mutexes?). But porting it
to BSD should also port it to Mac OS, true; their features are very similar.
--
Majority, n.: That quality that distinguishes a crime from a law.
If you're willing to pay for the work I suggest you send mail to
sbcl-devel (or individual developers) and ask for a quote. I'm
personally unavailable for such work till sometime in 2006 due to prior
commitments, but that's just me.
If you're not willing to pay for the work, then doing it yourself is a
strategy that will not only win you undying glory, but also be a deeply
educational experience taking --say-- 1-3 months of your time (assuming
fulltime work, basic SBCL-internals knowledge, a good understanding of
the operating system in question, and a good knowledge of Lisp, C and
assembler for the architecture you're targeting).
If you don't have the time or the chops, and aren't willing to pay for
the work...
Well, what is Usenet for? ;-)
Cheers,
-- Nikodemus Siivola