So let's rewrite a better one. By better one I mean adding new
functionalities like categories and/or comments on links for instance.
Let's set the rules:
Rule 1: Anything is OK as long as it's in Common Lisp.
Rule 2: An exception to rule 1 is accepted for stuff like the OS(Linux,
MacOS, etc.), Database (PostgreSQL, MySQL), Webservers (Apache), etc.
After all there are more than enough Lisp web frameworks around (TBNL, UCW,
AServe, CL-HTTP, Araneida, etc. ;-)
Here is a starting point:
(defclass link ()
((url :accessor url :initform "http://")
(title :accessor title :initform "")
(nb-points :accessor nb-points :initform 1)
(creation-date :accessor creation-date :initform (get-universal-time))
...
))
Any takers ?
Marc
Bill
Cool. Let's start!
Anybody else ?
Marc
So I think it would be better to start a project to address these
issues. Why not collect together a list of libraries that are already
useful, but lack polish - ie, aren't portible, not asdf-installable,
etc. Then get people on board to polish the libraries, write test
suites, make portable, write documents for. The participants don't
even need to be particularly experienced Lispers - this could infact be
pitched _at_ newbies as a way to learn, much like Kernel Janitors for
the Linux kernel.
I for one would be willing to participate in this as a newbie, now
someone needs to volunteer to administrate & someone experienced in
Lisp needs to volunteer to mentor.
Thoughts?
Brad
I am certainly interested. Though I am working full time, I could spare
4 hours/week. I nominate Marc as project lead. Pick a platform, Lisp Implementation
(my preference is LispWorks), database (i assume CL-SQL for the interface).
Wade
Not such a discussion, please. It's not an either/or thing. Any attempt
to improve the status quo is a good idea.
Marc's idea to do better than reddit is a cool idea because this will be
a "problem-driven approach". The libraries that come out of this will be
proven in practice, which is a good thing.
That is to say, if you prefer to do something else do something else,
but don't tell others that what they are doing is wrong. Just my 0.02€.
Pascal
--
My website: http://p-cos.net
Closer to MOP & ContextL:
http://common-lisp.net/project/closer/
> I think a better
> idea would be to look at why the authors of Reddit abandoned Lisp, and
> fix those problems.
I don't think they let use replace their FreeBSD box. :-)
--
Web: http://www.no-spoon.de/ -*- IRC: stesch @ freenode
> IMHO, there is no point in re-writing reddit in Lisp. Though, I do
> think that Reddit no longer being developed using Lisp should be
> used as a call to action - after all Lispers liked that Reddit was
> written in Lisp, and are now disappointed that it is not. I think a
> better idea would be to look at why the authors of Reddit abandoned
> Lisp, and fix those problems.
And what better way to find out exactly what those problems are than
to implement the thing that exposed them in the first place. Which is
not to say that folks who are working on well-tested and
well-documented libraries should drop what they're doing in order to
work on a CL Reddit clone. Anyway, Marc Battyani has already produced
a number of great CL libraries--if showing the the world that the
Reddit guys made a mistake by abandoning Lisp get's his juices
flowing, I say more power to him. (BTW, Marc, I might be interested in
helping out; let me know when there's a svn repo.)
> So I think it would be better to start a project to address these
> issues. Why not collect together a list of libraries that are already
> useful, but lack polish - ie, aren't portible, not asdf-installable,
> etc. Then get people on board to polish the libraries, write test
> suites, make portable, write documents for. The participants don't
> even need to be particularly experienced Lispers - this could infact be
> pitched _at_ newbies as a way to learn, much like Kernel Janitors for
> the Linux kernel.
So go for it--there are, I believe, over a hundred libraries on
common-lisp.net now. Surely some of them could stand a bit of
janitorial work: tests, documentation, enchancements, or whatever. And
I'm sure the common-lisp.net folks won't turn down offers to do work
to make common-lisp.net into a an even better one-stop-shopping site
for Lisp libraries.
> I for one would be willing to participate in this as a newbie, now
> someone needs to volunteer to administrate & someone experienced in
> Lisp needs to volunteer to mentor.
Perhaps one of the authors of an existing library on common-lisp.net
that could use a bit of janitorial work will take you up on your offer.
-Peter
--
Peter Seibel * pe...@gigamonkeys.com
Gigamonkeys Consulting * http://www.gigamonkeys.com/
Practical Common Lisp * http://www.gigamonkeys.com/book/
> Rule 1: Anything is OK as long as it's in Common Lisp.
> Rule 2: An exception to rule 1 is accepted for stuff like the OS(Linux,
> MacOS, etc.), Database (PostgreSQL, MySQL), Webservers (Apache), etc.
>
> After all there are more than enough Lisp web frameworks around (TBNL, UCW,
> AServe, CL-HTTP, Araneida, etc. ;-)
In the first year we discuss which OS to take, which Common Lisp
implementation, Database, Webserver, etc. :-)
Just my $0.02...
One of the reasons they quoted was that the project wouldn't work on
all their OS's and machines, so it would seem a goal of the project is
to make it work with as many lisps as possible.
Justin
I'm interested too--though I'd put in a vote to at least try to make
the thing vaguly portable between (some) CL implementations. Which can
be easily achived simply by not picking one--let folks who actually
want to work on it use whatever impl they want and let them worry
about making it work on their imple. (Of course if Marc makes certain
high-level decisions such as requiring threads, then that might leave
out certain impls on certain platforms.) I think this is a good idea
because it will entice more folks to work on it; it will likely
improved the design of the software; and will also help uncover areas
of gratuitious difference between impls, which was (loosely speaking)
one of the problems that the Reddit guys cited as a reason to abandon
Lisp. My $.02.
Exactly. Libraries without applications aren't very interesting.
> (BTW, Marc, I might be interested in helping out; let me know when there's
> a svn repo.)
Likewise - sounds like fun!
Best wishes,
Bill.
> So let's rewrite a better one. By better one I mean adding new
If this is an emotional reaction to Reddit being rewritten in Python,
I think it's a pointless exercise. And I'm afraid it may hurt the
reputation of Lispers.
> functionalities like categories and/or comments on links for instance.
The authors of Reddit explain in an interview why they don't use
categories, but I don't have a link handy.
Paolo
--
Why Lisp? http://wiki.alu.org/RtL%20Highlight%20Film
Recommended Common Lisp libraries/tools:
- ASDF/ASDF-INSTALL: system building/installation
- CL-PPCRE: regular expressions
- CFFI: Foreign Function Interface
While Yoda would disagree, I do think that occasionally anger is a very
good emotion to get things moving :). I never got around using Emacs
until I got so much aggravated about JBuilder 1.0, that I finally took
the plunge into using Emacs which I never regretted after.
Peter
--
Ltk, the easy lisp gui http://www.peter-herth.de/ltk/
You're 100% right. I didn't mean to say what I said :) Sorry about
that.
I personally do prefer to do something else, and I do fully support
those who would like to clone Reddit. I shall post my ideas for a CL
Janitors project in a new thread.
Cheers
Brad
I won't be able to directly contribute to this project, but if you
decide to use one of the libraries that I maintain, you will get my full
support when problems arise.
I am sad to say that some of my most productive coding has come from a
sense of competition. (Like on wikis to show how Lisp is more powerful
than other languages. Or distributing scripts to defeat forum defacers
who actively try poking holes in my assumptions.)
So while I think the Reddit guys said nothing wrong, I unfortunately
follow this with interest, and find myself hoping they're going to use
tools I can simply download.
Tayssir
Too true.
>
> So let's rewrite a better one. By better one I mean adding new
> functionalities like categories and/or comments on links for instance.
Here is my idea for "cool new functionality": autocategories.
By that I mean being able to add keywords to a link, which is pretty
standard, but then have the website analyze the text of that link and
compare it to other websites and see if it may fit into another
category. That way an article about lisp would be expanded into the
computer, programming, and religion categories. (I kid, I kid)
Obviously this would have to be kept distinct. One additionally useful
application of this would be to have the site analyze a submitted link
as you assign keywords to it, and suggest additional ones that might be
applicable. The idea is not perfect, and may end up not working at
times in spectacularly awful ways, but when it does work it would be
pretty useful.
>
> Let's set the rules:
>
> Rule 1: Anything is OK as long as it's in Common Lisp.
> Rule 2: An exception to rule 1 is accepted for stuff like the OS(Linux,
> MacOS, etc.), Database (PostgreSQL, MySQL), Webservers (Apache), etc.
>
> After all there are more than enough Lisp web frameworks around (TBNL, UCW,
> AServe, CL-HTTP, Araneida, etc. ;-)
>
> Here is a starting point:
>
> (defclass link ()
> ((url :accessor url :initform "http://")
> (title :accessor title :initform "")
> (nb-points :accessor nb-points :initform 1)
> (creation-date :accessor creation-date :initform (get-universal-time))
> ...
> ))
>
> Any takers ?
I'll help. Granted I am new to lisp and have little to contribute in
most other categories, but if you ever hit a warm bodies problem you
know who to call.
>
> Marc
(Coming back after putting the kids to bed)
I'm replying collectively.
So far the balance is largely in favor of doing it so let's go!
But in my initial idea it's not my project, it's a lot of different
projects.
I mean it will be much more fun if there are several versions of it. So
interested people should use the libraries/tools/implementations they are
familiar with.
Personally, I will use Apache/mod_lisp/lispworks/postgresql/linux with my
framework.
In a second time we can work collectively to find better
algorithms/concepts/ideas.
For now I will at least add categories. I don't understand why they didn't
put them in the first place.
BTW if somebody don't write code but has some graphical elements to spare
that would be cool. (I mean taking the images/styles from reddit will
probably not be appreciated ;-) Things like a nice style, up/down arrows,
etc.
So far I've setup apache+mod_lisp+lispworks on my Debian box at
http://linkit.fractalconcept.com
(Don't rush to it. It only displays internal server error so far ;-)
Marc
I've got one better, instead of just making independent websites +
databases agree on an api now for the sites to share data with each
other. Then if someone is too lazy to (submit to/register on/even read)
multiple sites they don't have to.
> BTW if somebody don't write code but has some graphical elements to spare
> that would be cool. (I mean taking the images/styles from reddit will
> probably not be appreciated ;-) Things like a nice style, up/down arrows,
> etc.
I am not much experience with CSS, but I have some arrows for you:
http://www.peter-herth.de/linkit.png
If there is need for more graphical elements, I will gladly try my
unskilled hands at them.
> Paolo Amoroso wrote:
[...]
>> If this is an emotional reaction to Reddit being rewritten in Python,
>> I think it's a pointless exercise. And I'm afraid it may hurt the
>> reputation of Lispers.
[...]
> While Yoda would disagree, I do think that occasionally anger is a
> very good emotion to get things moving :). I never got around using
Given the responses in this thread, it does indeed look like emotions
are a good way to get things moving. I just wonder why flamewars
generate more words than code :)
> For now I will at least add categories. I don't understand why they didn't
> put them in the first place.
From what I remember from the interview I mentioned elsewhere,
categories are important with newspaper-like news sources, where a
large part of content is not interesting for a single reader. Reddit
instead lets the user promote--and hence see--what he is interested in.
Cool. Can you cut them in pieces and send them to me ?
The small ones with shadow please.
> If there is need for more graphical elements, I will gladly try my
> unskilled hands at them.
A logo ?
Marc
> I mean it will be much more fun if there are several versions of it. So
> interested people should use the libraries/tools/implementations they are
> familiar with.
> Personally, I will use Apache/mod_lisp/lispworks/postgresql/linux with my
> framework.
Are there anybody trying to do one version or am I going to be the only one
?
(You can email me if you want to stay anonymous ;-)
Let's hope there will be several versions.
Marc
As far as I know there are no Lisp FastCGI bindings for lighttpd yet,
which is a shame. So that part of the platform might not be possible.
Even so, I'd like mine to run in as many places as it reasonably can.
Bill
Well, it's interesting to see different views of a same problem. Personally
I will only target Lispworks so that it will work on
Windows/Linux/Unix/MacOS/etc.
I've already the site up and running. Right now I'm working on the
application part. :)
Marc
So if it's a reddit-ish, do you already have in mind what
algorithm you'd use to decide the ranking of posts?
Do tell!
> On Tue, 06 Dec 2005 20:06:30 +0000, Peter Seibel wrote:
> >
> > And what better way to find out exactly what those problems are than
> > to implement the thing that exposed them in the first place.
>
> Exactly. Libraries without applications aren't very interesting.
Worse: they're almost certainly wrong, since they're "defined" via
some sort of apriori "divination".
/Jon
--
'j' - a n t h o n y at romeo/charley/november com
Sorry but I start with the infrastructure. Showing the links, submitting
them, managing the users, the categories, etc.
The ranking function will come later but feel free to expose your ideas on
the subject.
Marc
OK, here is what I have after 4 hours:
http://linkit.fractalconcept.com
So far I have most of the objects classes, the database stuff, the web site
up and running and the basic functionnalities to submit and assign
categories to links.
What is mostly missing is: Links ranking and user management. The data
structure is there but then there is some code to write.
I will leave this site up for a few minutes before going to bed (it's 2:30
am here ;-). I will cut it soon as I don't want to have it full of spam
tomorrow.
Marc
It is supposed to work with IE and firefox. I have never tested this with
other browsers so they probably don't work... ;-)
Marc
cool!
...and you make me feel sooooo stupid (I am still toying
around with web development while learning / reinventing the
wheel as I go along...)
--Sylvain
> "Marc Battyani" <Marc.B...@fractalconcept.com> wrote
>>
>> Sorry but I start with the infrastructure. Showing the links, submitting
>> them, managing the users, the categories, etc.
>> The ranking function will come later but feel free to expose your ideas on
>> the subject.
>
> OK, here is what I have after 4 hours:
> http://linkit.fractalconcept.com
>
> So far I have most of the objects classes, the database stuff, the web site
> up and running and the basic functionnalities to submit and assign
> categories to links.
> What is mostly missing is: Links ranking and user management. The data
> structure is there but then there is some code to write.
Great! Now we can all boycot reddit and switch to linkit! :-)
> I will leave this site up for a few minutes before going to bed (it's 2:30
> am here ;-). I will cut it soon as I don't want to have it full of spam
> tomorrow.
Leave it.
--
__Pascal Bourguignon__ http://www.informatimago.com/
"Indentation! -- I will show you how to indent when I indent your skull!"
OK sleeping time, I will cut the site ;-)
27 people have come to look at it in 35 min and I have already had to remove
one spam item which was not kind for some guys...
As you may have seen, I've already added categories to links and I will also
add comments soon.
Any ideas we could try ?
Comments on the site so far ?
Suggestions for the ranking algorithms ?
etc.
Marc
Start with an antispam filter to be able to let it on 24x7 ;-)
--
__Pascal Bourguignon__ http://www.informatimago.com/
In a World without Walls and Fences,
who needs Windows and Gates?
There's a native implementation of FastCGI for CMUCL, and I believe
there's a binding to libfcgi for Clisp. I haven't tried either of
them, but if they implement the FastCGI protocol, they should work with
lighttpd (or apache, or any other server which supports FastCGI).
You seem to be rewriting Slashdot of some sort, with those categories
and comments. The philosophy behind Reddit is pretty clear: minimalism.
That is really the only thing that attracts me to it. They have minimal
design, with tiny arrows, very little HTML code per se. Some minimal
AJAX (which I hope we are to implement eventually). No useless words.
Less is bloody more. Even their logo is tiny.
--pitr
Or maybe moderation, so registered users can vote out the crap (not just
spam, but troll comments maybe)?
--
Majority, n.: That quality that distinguishes a crime from a law.
Killfile is the perfect solution :)
--
|a\o/r|,-------------.,---------- Timofei Shatrov aka Grue ------------.
| m"a ||FC AMKAR PERM|| mail: grue at mail.ru http://grue3.tripod.com |
| k || PWNZ J00 || Kingdom of Loathing: Grue3 lvl 18 Seal Clubber |
`-----'`-------------'`-------------------------------------------[4*72]
CH> On Wed, 7 Dec 2005, Marc Battyani wrote:
>> "Bill Atkins" <batk...@gmail.com> wrote > I'll be doing one
>> with Lisp on a Ladder/Postgresql/(Araneida, lighttpd, > and
>> apache, hopefully)/(Linux and Windows)/(SBCL, CMUCL, Clisp, and
>> > Allegro).
>> >
>> > As far as I know there are no Lisp FastCGI bindings for
>> lighttpd yet, > which is a shame. So that part of the platform
>> might not be possible. > Even so, I'd like mine to run in as
>> many places as it reasonably can.
>>
>> Well, it's interesting to see different views of a same
>> problem. Personally I will only target Lispworks so that it
>> will work on Windows/Linux/Unix/MacOS/etc.
>>
>> I've already the site up and running. Right now I'm working on
>> the application part. :)
CH> So if it's a reddit-ish, do you already have in mind what
CH> algorithm you'd use to decide the ranking of posts? Do tell!
One of my buddies is writing a way-better-than-reddit clone (in PHP)
and here's the ranking algorithm he used (probably this will be
transformed into something more complex):
(/ (- positive-points negative-points)
(- current-timestamp submission-timestamp))
Simple and useful enough for beginning I guess.
Happy hacking,
--
Emre Sevinc
eMBA Software Developer Actively engaged in:
http:www.bilgi.edu.tr http://ileriseviye.org
http://www.bilgi.edu.tr http://fazlamesai.net
Cognitive Science Student http://cazci.com
http://www.cogsci.boun.edu.tr
OK I'm back and I have put the site on again.
I've also adding some new features:
-the user/registration stuff.
-categories for links with catetogry filters for each user.
-submitters filters for each user. (kill files)
As I currently work on the live site you may see some glitches and you will
see the new features coming as soon as I add them. So check from time to
time.
Marc
> I've also adding some new features:
> -the user/registration stuff.
> -categories for links with catetogry filters for each user.
> -submitters filters for each user. (kill files)
>
I think it would be very helpful if those of you undertaking this
endeavor would make your source code available as you develop. This
would enable others (specifically those new to CL) an opportunity to
see how some of the veteran lispers approach web development using a
non-trivial example.
Thanks,
Pete
--
Robert Uhl <http://public.xdi.org/=ruhl>
We're going to Moe's. If we're not back, avenge our deaths.
--Homer Simpson
What kind of framework (if any) are you using for this?
>From what I saw, it's amazing what Marc had done in just 7 hours...
Great job. The site looks really good so far. One comment: since last
night it seems to have started crashing Safari. I'm not sure why.
I'll post again if I can get an easily reproducable scenario.
> Suggestions for the ranking algorithms ?
I do like the idea behind the slashdot Karma system. Posters with a
good history get a point bonus on new posts. Perhaps the following
algorithm would be a reasonable starting point:
(defun initial-points-for-post (poster)
(if (< (total-posts poster) 10)
0
(/ (average-points-on-previous-posts poster) 2)))
So, newbies get no bonus, but with more than 10 posts under your belt
you get free points equal to half the average score on your previous
posts...
Justin Dubs
Okay, I've reproduced the Safari crash. If I go to a profile page for
a submitter, in this case jtdubs (myself) and then click on the "Hot"
link, Safari crashes. Not every time, but better than half the time.
Here are the relavent parts of the Safari crash report:
Date/Time: 2005-12-07 19:32:04.610 -0500
OS Version: 10.4.1 (Build 8B15)
Report Version: 3
Command: Safari
Path: /Applications/Safari.app/Contents/MacOS/Safari
Parent: WindowServer [62]
Version: 2.0 (412)
Build Version: 1
Project Name: WebBrowser
Source Version: 4120000
[... snip ...]
Exception: EXC_BAD_ACCESS (0x0001)
Codes: KERN_PROTECTION_FAILURE (0x0002) at 0x00000074
Thread 0 Crashed:
0 com.apple.WebCore 0x95b152d8 DOM::DocumentImpl::part()
const + 0
1 com.apple.WebCore 0x95c080bc
KJS::XMLHttpRequest::changeState(KJS::XMLHttpRequestState) + 72
2 com.apple.WebCore 0x95c08f5c
KJS::XMLHttpRequest::slotData(KIO::Job*, char const*, int) + 236
3 com.apple.WebCore 0x95b4bb5c KWQSignal::call(KIO::Job*,
char const*, int) const + 152
4 com.apple.WebKit 0x958ecb64 -[WebSubresourceClient
didReceiveData:lengthReceived:] + 68
5 com.apple.Foundation 0x928ae8a0
-[NSURLConnection(NSURLConnectionInternal) _sendDidReceiveDataCallback]
+ 564
6 com.apple.Foundation 0x928acd14
-[NSURLConnection(NSURLConnectionInternal) _sendCallbacks] + 440
7 com.apple.Foundation 0x928acae0 _sendCallbacks + 156
8 com.apple.CoreFoundation 0x9074ae2c __CFRunLoopDoSources0 + 384
9 com.apple.CoreFoundation 0x9074a35c __CFRunLoopRun + 452
10 com.apple.CoreFoundation 0x90749ddc CFRunLoopRunSpecific + 268
11 com.apple.HIToolbox 0x93122ca0 RunCurrentEventLoopInMode +
264
12 com.apple.HIToolbox 0x93122334 ReceiveNextEventCommon + 380
13 com.apple.HIToolbox 0x931221a0
BlockUntilNextEventMatchingListInMode + 96
14 com.apple.AppKit 0x9361d1a4 _DPSNextEvent + 384
15 com.apple.AppKit 0x9361ce68 -[NSApplication
nextEventMatchingMask:untilDate:inMode:dequeue:] + 116
16 com.apple.Safari 0x00007058 0x1000 + 24664
17 com.apple.AppKit 0x936193cc -[NSApplication run] + 472
18 com.apple.AppKit 0x93709c1c NSApplicationMain + 452
19 com.apple.Safari 0x00002700 0x1000 + 5888
20 com.apple.Safari 0x00057190 0x1000 + 352656
Justin Dubs
Login, then click "Submit", then click "Add Category" but don't choose
one. Now in the popup window click "Close" twice. Boom.
Cheers,
Edi.
--
Lisp is not dead, it just smells funny.
Real email: (replace (subseq "spam...@agharta.de" 5) "edi")
Don't do that ;-)
OK I have FF 1.06 I'm getting the 1.5 version
Marc
> Marc Battyani wrote:
>
>> BTW if somebody don't write code but has some graphical elements to
>> spare that would be cool. (I mean taking the images/styles from
>> reddit will probably not be appreciated ;-) Things like a nice style,
>> up/down arrows, etc.
>
> I am not much experience with CSS, but I have some arrows for you:
> http://www.peter-herth.de/linkit.png
> If there is need for more graphical elements, I will gladly try my
> unskilled hands at them.
Instead of arrows, why not use Lisp parentheses rotated 90 degrees? ;-)
Jeremy.
Let's see, ( and ) rotated 90 degrees. That'd be - and -. I don't
think that looks good at all.
Oh, sorry, wrong axis.
> I'm game. I've started working on a Rails clone in Lisp called Lisp on
> a Ladder. It will be mostly a toy, but I think it might be a good
> stepping stone to Lisp for people who are impressed with Rails.
Have you considered using Lisp on Lines
(http://www.cliki.net/lisp-on-lines)
instead ?
The Lisp community is far from being as huge as those of the other
languages
and web programming is not a field where we can spare talented
contributors,
imho. Duplication of effort at this stage is, again imho, harmful.
I can't speak for D.Crampsie, but i really think you should contact him
about
this, especially since you seem to already have thought through this
problem.
-- Pierre-François
Yep, I'm aware of Lisp on Lines. Aside from the similarly alliterative
names, my project doesn't actually have too much in common with
drewc's. The goal of Lisp on a Ladder is mainly an educational one -
to provide an easy way for people familar with Rails to get involved
with Lisp and to write some applications in it (so the name is kind of
a (n unintentional) reference to its purpose; it's a ladder to an
understanding of Lisp). It isn't meant to be a framework for real
applications; instead, it will be more like a case study in Lisp
programming for those who are unfamiliar with it. Also, the folks who
argue against Lisp will *finally* not be able to claim that "Lisp isn't
practical, because it doesn't have anything like Rails." That gets
really tiresome.
Bill
> Yep, I'm aware of Lisp on Lines. Aside from the similarly alliterative
> names, my project doesn't actually have too much in common with
> drewc's. The goal of Lisp on a Ladder is mainly an educational one -
> to provide an easy way for people familar with Rails to get involved
> with Lisp and to write some applications in it (so the name is kind of
> a (n unintentional) reference to its purpose; it's a ladder to an
> understanding of Lisp). It isn't meant to be a framework for real
> applications; instead, it will be more like a case study in Lisp
> programming for those who are unfamiliar with it. Also, the folks who
> argue against Lisp will *finally* not be able to claim that "Lisp isn't
> practical, because it doesn't have anything like Rails." That gets
> really tiresome.
I think I'm confused. How can something be "anything like Rails"
and therefore shown to be "practical", if the thing in question
"isn't meant to be a framework for real applications"?
If someone thiks that practicality means having a Rails-alike
(a pretty weird view, since it means that almost nothing is
"practical", but that's their problem) then they're unlikely
to be convinced by something that's only intended as an
educational tool, or a case study.
What am I missing?
--
Gareth McCaughan
.sig under construc
[...]
> It isn't meant to be a framework for real applications; instead, it
> will be more like a case study in Lisp programming for those who are
> unfamiliar with it. Also, the folks who argue against Lisp will
> *finally* not be able to claim that "Lisp isn't practical, because
> it doesn't have anything like Rails." That gets really tiresome.
Maybe one of us is mistaken about what Rails is. I understood that it
was being promoted (and used) both as something that's easy to get
into, and as something that can produce real applications.
It's that idea of going from something that's really easy to prototype
right through to the application itself that's an important aspect of
Rails.
I doubt anyone would question lisp's ability to have cool toys, and
maybe having a cool Rails type toy might be useful in some sense. But
that wouldn't be anything much like Rails, I suspect.
Hmm. I think you guys are reading too much into it. :)
All I meant by the phrase "not a framework for real applications" is
that I'm not writing this to serve as an enterprise-grade tool or
because I think the concepts in Lisp on a Ladder will be the best way
to do web programming. I think the future in that area lies with
continuation-based frameworks, and I think that's how "real"
applications ought to be done. But LoaL will follow the Rails model
and will be very similar to it in lots of ways. This isn't because I
think the Rails model is necessarily the best for developing
applications, but again strictly for educational purposes. The idea is
to introduce people who are excited about Rails to the power that
macros can bring. Also, if it can bring more awareness of Lisp and/or
flush out some of the problems that keep Lisp from being used
regularly, all the better. It can still be practical and useful even
if I'm not intending it to be used for truly serious work. For people
who believe Rails to be the most productive framework around, for
example, this will be extremely practical and useful. But that doesn't
mean I think it's the best way to do real applications (nor that I
think Rails is fundamentally bad, just that continuation frameworks
feel much nicer).
Hope that cleared things up.
Bill
> > For now I will at least add categories. I don't understand why they didn't
> > put them in the first place.
> From what I remember from the interview I mentioned elsewhere,
> categories are important with newspaper-like news sources, where a
> large part of content is not interesting for a single reader. Reddit
> instead lets the user promote--and hence see--what he is interested in.
The usefulness of categories is that one can promote things for certain
readers and not others. There are probably *very* few people with all
the exact same interests that I have. If I grade based on how
interesting things are to me, that isn't very helpful to most people,
even those who share my opinions about certain subjects.
With categories you could promote things based on how well I thought
they fit each of their keyword targets (i.e. +Lisp, -General for some
programming link). I envision a set of up and down arrows for each
keyword, plus a "pan" (minus all) and a "general" option for "I think
this is of general interest".
It may be that with a wide enough readership, categories aren't actually
necessary -- that the very low accuracy feedback is sufficient to
produce useful results. But it doesn't look like it works too well as
reddit currently stands, -- it's super-heavy weighted towards topics of
interest to programmers, and especially non-mainstream language
programmers.
Michael