Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Amazon used lisp & C exclusively?

661 views
Skip to first unread message

Alok

unread,
Jul 8, 2006, 8:58:28 AM7/8/06
to
http://www.cabochon.com/~stevey/blog-rants/tour-de-babel.html

But sadly they don't have any more openings for lisp.
http://tinyurl.com/zaewf
What other major companies have posts for lisp?

Alok

Alok

unread,
Jul 8, 2006, 9:01:58 AM7/8/06
to

A quote from the web page linked above.

"The original brilliant guys and gals here only allowed two languages
in Amazon's hallowed source repository: C and Lisp."

Frank Buss

unread,
Jul 8, 2006, 9:58:08 AM7/8/06
to
Alok wrote:

> http://www.cabochon.com/~stevey/blog-rants/tour-de-babel.html

Quoting the article, they are using more languages:

| C, C++, Lisp, Java, Perl, (all languages we use at Amazon),

And looks like they don't use Lisp very much today, because they have a
large C++ code base:

| We have 50 million lines of C++ code.

| and was expanding at 8 million lines a quarter

and:

| I think there may still be more Lisp hackers, per capita, in CS Apps
| than in any other group at Amazon. Not that they get to use it much

And they rewrote an Emacs Lisp solution in JSP (Java):

| they missed Mailman and Emacs, and how Arizona
| (the JSP replacement we'd spent years developing)
| still just wasn't doing it for them.

--
Frank Buss, f...@frank-buss.de
http://www.frank-buss.de, http://www.it4-systems.de

Ken Tilton

unread,
Jul 8, 2006, 11:22:59 AM7/8/06
to

Frank Buss wrote:
> Alok wrote:
>
>
>>http://www.cabochon.com/~stevey/blog-rants/tour-de-babel.html
>
>
> Quoting the article, they are using more languages:
>
> | C, C++, Lisp, Java, Perl, (all languages we use at Amazon),
>
> And looks like they don't use Lisp very much today, because they have a
> large C++ code base:
>
> | We have 50 million lines of C++ code.
>
> | and was expanding at 8 million lines a quarter

That was offered as a /problem/. Mainly because C++ sucks so badly.
(Author's characterization.)

Later on Ruby gets crowned The Perfect Language, with Python denounced
for the whitespace thing and general technical goofiness.

So look who made it to the finals: Lisp and Ruby.

kt

--
Cells: http://common-lisp.net/project/cells/

"I'll say I'm losing my grip, and it feels terrific."
-- Smiling husband to scowling wife, New Yorker cartoon

William James

unread,
Jul 8, 2006, 2:45:35 PM7/8/06
to
Ken Tilton wrote:
> Frank Buss wrote:
> > Alok wrote:
> >
> >
> >>http://www.cabochon.com/~stevey/blog-rants/tour-de-babel.html
> >
> >
> > Quoting the article, they are using more languages:
> >
> > | C, C++, Lisp, Java, Perl, (all languages we use at Amazon),
> >
> > And looks like they don't use Lisp very much today, because they have a
> > large C++ code base:
> >
> > | We have 50 million lines of C++ code.
> >
> > | and was expanding at 8 million lines a quarter
>
> That was offered as a /problem/. Mainly because C++ sucks so badly.
> (Author's characterization.)
>
> Later on Ruby gets crowned The Perfect Language, with Python denounced
> for the whitespace thing and general technical goofiness.
>
> So look who made it to the finals: Lisp and Ruby.

Ruby was derived from Lisp, according to its creator.

| Ruby is a language designed in the following steps:
|
| * take a simple lisp language (like one prior to CL).
| * remove macros, s-expression.
| * add simple object system (much simpler than CLOS).
| * add blocks, inspired by higher order functions.
| * add methods found in Smalltalk.
| * add functionality found in Perl (in OO way).
|
| So, Ruby was a Lisp originally, in theory.
| Let's call it MatzLisp from now on. ;-)
|
| matz.

Tayssir John Gabbour

unread,
Jul 8, 2006, 3:25:03 PM7/8/06
to


I'd take that with a grain of salt. Partly because of the following
link (though of course the author could be an impostor).
http://reddit.com/info/2q5z/comments/c2qlu

It's unfortunately hard to verify what people say about companies like
Amazon, as they don't open their internals for us to verify; might as
well call them "secret societies". ;)


Tayssir

--
Interesting Yale anarchist interviewed on Charlie Rose show, on
internationalism and authority.
http://www.youtube.com/watch?v=uajHCIU876I#

Pascal Bourguignon

unread,
Jul 8, 2006, 3:45:01 PM7/8/06
to
"William James" <w_a_...@yahoo.com> writes:
> Ruby was derived from Lisp, according to its creator.

Yes, there's a whole cottage industry of sub-optimal programming
language design developed by lisp illuminati.

Smalltalk (and all the OO wave) was started by Alan Kay who programmed in Lisp.
Java was created by James Gosling, well known lisp programmer.
Ruby was overtly "derived" from Lisp.
etc.


Lisp is such a powerful tool, we cannot let them the masses use it!
We'd lose our competitive advantage!


--
__Pascal Bourguignon__ http://www.informatimago.com/
The mighty hunter
Returns with gifts of plump birds,
Your foot just squashed one.

David Steuber

unread,
Jul 8, 2006, 7:36:15 PM7/8/06
to
Pascal Bourguignon <p...@informatimago.com> writes:

> "William James" <w_a_...@yahoo.com> writes:
> > Ruby was derived from Lisp, according to its creator.
>
> Yes, there's a whole cottage industry of sub-optimal programming
> language design developed by lisp illuminati.
>
> Smalltalk (and all the OO wave) was started by Alan Kay who
> programmed in Lisp. Java was created by James Gosling, well known
> lisp programmer. Ruby was overtly "derived" from Lisp. etc.
>
>
> Lisp is such a powerful tool, we cannot let them the masses use it!
> We'd lose our competitive advantage!

I think the reason languages like Ruby are developed is to avoid the
parens. Yes, I'm being serious. What turns people off of Lisp more
than anything else does seem to be the parens.

I would call BS, but what turned me off of python was the whitespace.

I thought Matz was happy to steal good ideas from anywhere they were
to be found and that Ruby was more of a Smalltalk rip-off.

--
The lithobraker. Zero distance stops at any speed.
This post uses 100% post consumer electrons and 100% virgin photons.

Alok

unread,
Jul 9, 2006, 6:24:10 AM7/9/06
to
David Steuber wrote:
> Pascal Bourguignon <p...@informatimago.com> writes:
>
> > "William James" <w_a_...@yahoo.com> writes:
> > > Ruby was derived from Lisp, according to its creator.
> >
> > Yes, there's a whole cottage industry of sub-optimal programming
> > language design developed by lisp illuminati.
> >
> > Smalltalk (and all the OO wave) was started by Alan Kay who
> > programmed in Lisp. Java was created by James Gosling, well known
> > lisp programmer. Ruby was overtly "derived" from Lisp. etc.
> >
> >
> > Lisp is such a powerful tool, we cannot let them the masses use it!
> > We'd lose our competitive advantage!
>
> I think the reason languages like Ruby are developed is to avoid the
> parens. Yes, I'm being serious. What turns people off of Lisp more
> than anything else does seem to be the parens.

Since most lisp developers use indentation to make code readable
anyway, would it be possible to combine parens and indentation to
produce a cleaner syntax that can be as easily parsed by the lisp
compiler/interpreter? The readability of such code would increase a lot
(at least for a beginner like me).

I must say, that although editors can add trailing parens to make
writing code easier, they cannot make the code easily readable by the
same token. And as a lisp beginner, I always tend to reference count
the end parens to find the matching begin parens of the expression area
within the parens.

I know Vim and Emacs can show matching begin (or end) paren when the
cursor is on the corresponding end (or begin) paren. But my cursor is
not always on the end or begin paren, when I read code.

Is there an option to highlight the whole expression demarcated by
parens? Like show the current expression region with a slightly bluish
tint background? (Emacs has something for showing the current mark
region in a different color M-x transient-mark-mode)

Hey maybe if there is such an option then, can it be taken one more
step ahead by showing the nested expressions by different shades of
bluish tint? And if your code is nested too deep, then the innermost
paren is a dark blue background !

I have heard of an advanced Lisp editor written in CLIM called <a
href="http://www.cliki.net/Climacs">climancs</a>. Can climacs do the
nested expression shade thing?

carlos...@gmail.com

unread,
Jul 9, 2006, 7:51:06 AM7/9/06
to
Alok wrote:
> Hey maybe if there is such an option then, can it be taken one more
> step ahead by showing the nested expressions by different shades of
> bluish tint? And if your code is nested too deep, then the innermost
> paren is a dark blue background !

Do you want something like the fourth method listed in
http://lemonodor.com/archives/001207.html?

Alok

unread,
Jul 9, 2006, 9:49:12 AM7/9/06
to

Wow! This is it !!! Excepting I want this only for current cursor
region, and not the whole file. Thanks for pointing this out.

Mallor

unread,
Jul 9, 2006, 1:20:32 PM7/9/06
to

Alok wrote:
>
> Since most lisp developers use indentation to make code readable
> anyway, would it be possible to combine parens and indentation to
> produce a cleaner syntax that can be as easily parsed by the lisp
> compiler/interpreter? The readability of such code would increase a lot
> (at least for a beginner like me).

This is all red herring. Parens are what people whine about because
they haven't seen something *else* compelling about Lisp. What
converts people is killer apps. If, for instance, I showed game
developers amazing things in OpenGL using Lisp that they couldn't do
some other way, and it was really really important stuff, they'd use
it. Failing a killer app, it's just a language. Not having anything
to distinguish itself, people whine about parens. So stop worrying
about perceived paren problems. Start worrying about killer apps.
Most of the popularized scripty languages delivered a compelling web
framework. Ruby's got Rails, Python's got Zope, etc.

People will use the most broken crufty shit of an interface in the
world, if it actually *DOES* something important to them.


Cheers,
Brandon Van Every

Ari Johnson

unread,
Jul 9, 2006, 2:59:30 PM7/9/06
to
"Mallor" <SeaFu...@gmail.com> writes:

> Most of the popularized scripty languages delivered a compelling web
> framework. Ruby's got Rails, Python's got Zope, etc.

Ruby became popular before Rails existed. I actually started using
Ruby and used it heavily for a period of time before Rails was
released to the public. Specifically, I played with Ruby in 2003 and,
in particular, using it as a backend for a web application with a PHP
interface. The whole mess communicated via XMLRPC. Rails was
released to the public in the summer of 2004, according to its
Wikipedia entry.

Python, similarly, became popular before Zope became its killer app.
I remember people raving about Python for long before I heard the
first thing about Zope.

Moreover, Lisp has a compelling web framework, or two. Both
Webactions and Uncommon Web are very nifty. That is not the problem.

I think that there are a few barriers to entry when it comes to Lisp
and, in particular, Common Lisp. Watch any Lisp newbie and you'll see
a few of them in action.

The first one is picking a Lisp. There are multiple implementations
of CL as well as multiple Schemes among which to choose. That's
barrier #1.

Let's assume that someone picks CL and decides on an implementation.
What does installing that implementation (either from its own binary
distribution package or from a Linux distribution; let's assume
apt-get install sbcl) actually give the user? Not much, in any sense
that he's used to. Conceptually, Lisp is so different that this forms
another barrier to entry in the user's mind. #2.

Now that you have a Lisp installed, you need to figure out how to do
useful things with it. The first thing you need to figure out how to
do is a hello world. In the majority of programming languages, this
consists of one of the following two processes:

1. Create source file with code in it. Compile source file. Run
resulting executable file.
2. Create source file with code in it. Chmod 755. Run source file.

Neither of these applies directly to Lisp, and that is why you get so
many questions of the form "How do I compile my Lisp file into an
executable?" and of the form "How do I run my Lisp script?" This is
barrier #3.

Next up, once the newbie figures out the REPL, he still wants to use
process 1 or 2 above. This is obnoxious and he doesn't think that
Lisp gets him anything in the way of workflow that Ruby, Python, Perl,
or even C doesn't already provide. Barrier #4.

So we show him SLIME. It's nifty, but how much difference is there
between the following?

Edit, Save, Compile, Switch to REPL, Run
-and-
Edit, Save, Switch to shell, [Compile,] Run

Barrier #5 is figuring out that you can test small bits of your code
rather than the whole program at once. So we teach the newbie that,
and he has some fun, until he realizes that he still doesn't know how
to interact with the world outside of Lisp. That's barrier #5, and it
can come up anywhere in this learning curve.

Now, assume that you have a newbie who has made it past all of the
above. He still has no idea how to deploy his application in any
useful way. Generally, he wants one of the following:

1. A tarball that someone can untar, ./configure, make, make install, and use
2. A web application that starts on bootup and runs happily along

#1 is not possible with Lisp in its current state of things. The end
user will need a Lisp of his own, and even though some Lisps allow you
to write a standalone executable, creating the topend function to run
from it is another barrier all to its own. Barrier #6 is convincing
your end users to install a Lisp (and to get the right version;
apt-get install sbcl on default-install Debian systems, for instance,
does not install a recent enough version of SBCL to do this) and
adding all the code to run a topend function that runs your actual
program in a sane environment and does something useful with
exceptions.

#2 is possible, but there are several ways to do it and none of them
works perfectly. For instance, it is fairly easy to create a script
to run at bootup that starts a Lisp with a web application running
within a detachtty session, but that tends to break some other things.
For instance, I was not able to get SBCL+Swank to work within a
detachtty, and the conclusion I came to with help from the Lisp
community was that I should run it within a screen session instead.
Barrier #7 is figuring out how to get your web application to come up
when your server comes up.

By the time you get past all these barriers, you wonder why you didn't
just use Ruby. For a web application, you can use Rails, which comes
with a very good "how to get your web application created and have it
run when the server boots up" tutorial. For a distributed program,
all you have to tell people is "make sure you have Ruby 1.6 or newer
and run this program."

It really has very little to do with having a killer app, IMHO.

Stefan Scholl

unread,
Jul 9, 2006, 3:14:05 PM7/9/06
to
Ari Johnson <iamt...@gmail.com> wrote:
> Moreover, Lisp has a compelling web framework, or two. Both
> Webactions and Uncommon Web are very nifty. That is not the problem.

Oh, these two are problematic, too.


Ari Johnson

unread,
Jul 9, 2006, 3:23:22 PM7/9/06
to
Stefan Scholl <ste...@no-spoon.de> writes:

Do they have problems that are entirely outside the scope of the
barriers I talked about? Given proficiency with SLIME and having a
working UCW installation hooked up to Apache via mod_lisp running, I
haven't had any real trouble with it, at least. All my problems fit
to some extent within the long post I just wrote. :)

Larry Clapp

unread,
Jul 9, 2006, 11:00:01 AM7/9/06
to
On 2006-07-09, Alok <alok....@gmail.com> wrote:
> I know Vim and Emacs can show matching begin (or end) paren when the
> cursor is on the corresponding end (or begin) paren. But my cursor
> is not always on the end or begin paren, when I read code.
>
> Is there an option to highlight the whole expression demarcated by
> parens? Like show the current expression region with a slightly
> bluish tint background? (Emacs has something for showing the current
> mark region in a different color M-x transient-mark-mode)

For Vim, see the ib command in Visual mode. (:help ib or :help
text-objects). See also the Rainbow Parenthesis plugin
(http://www.vim.org/scripts/script.php?script_id=1230). You may have
to tweak the colors, though -- I did.

-- Larry

Stefan Scholl

unread,
Jul 9, 2006, 4:33:16 PM7/9/06
to


UCW needs (needed?) you to collect differnt libraries in their
development stage, direct from some darcs repositories.

And webactions belong to AllegroServe. Which either costs a lot
of money and your first born son for Allegro CL, or you can try
to beat Portable AllegroServe. Last time I tried portable
allegroserve I had do send a patch. Someone made the CMUCL part
of it specific to Debian. I couldn't use the vanilla CMUCL with
it.


fredas...@yahoo.com

unread,
Jul 9, 2006, 5:19:28 PM7/9/06
to
THINGS YOU SHOULD KNOW ABOUT BRANDON J. VAN EVERY BEFORE REPLYING TO
ONE OF HIS POSTS

1. He has never designed any game, nor contributed to the design of
any game, which has ever seen the light of day, despite referring
to himself as a "game designer." (In rebuttal, he pointed out his
"one complete game" from "1983" on the "Atari 800" which he showed
to his "8th grade math teacher.")

2. He has never been employed in the game industry, in any way,
shape, manner or form. Despite this, for some reason he managed
to get named as an Independent Games Festival judge; a curious
turn of events, since their stated intent is to appoint
"professionals in the game industry" (their quote, not his).

3. In fact, the only programming job he had listed on his resume was
for only "2 years" ending in "1998," working in C and assembly on
a graphics driver, as a "Sr. Software Engineer" -- a curious
title, since this was his first (and only) job in the software
industry. There is no evidence he has used C++, nor any other
language, professionally. (And the company in question is
defunct, anyway, so there is no way to verify his claim.)

4. The other jobs he has mentioned having after this one and only
item on his resume are: "yard maintenance work," "painting
apartments," "scrubbing floors," "sub minimum wage signature
gathering," and working for "$5/hour at a Vietnamese restaurant."

5. The only personal project he actually wrote code for and released
in some fashion was Free3d, a software 3D rendering engine.
Stating that its goals were to be "100% efficient, 100% portable"
and to release it in a "one year time frame," he started in "1993"
and abandoned it in "1996," admitting that it "barely drew even a
single polygon" and "did hardly anything in the 3D department."

6. Almost every Internet community (Usenet newsgroup, mailing list,
etc.) he has ever introduced himself to has resulted in him
repeating the same pattern: asking leading questions, demanding
people do things his way, becoming hostile, annoying the other
participants, alienating them, and finally leaving in disgust.

7. Of the projects (open source and otherwise) whose communities he
has (briefly) joined, he has never contributed anything tangible
in terms of code or documentation.

8. The project he has intermittently claimed to be working on, Ocean
Mars, is vaporware -- and is one of his admitted "failures." He
allegedly sunk "nine months of full time 60 hours/week" and about
"$60K" into it with only a "spherical hexified icosahedron"
display to show for it (only allegedly, since it has never been
shown or demonstrated publicly). Ultimately he filed for a
"Chapter 7" "bankruptcy of $82K," since he was "completely
destitute" and "had no earning power to ever pay the money back."

9. Since his embarassing frustration with his Ocean Mars project, he
has decided that C and C++ aren't "worth anything as a resume
skill anymore," and embarked on a quest in 2003 to find a
high-level language that will suit his needs. After more than a
year, at least ten languages, and not having even "written a line
of code" in any of them, he still has yet to find a language that
will suit him.

10. Finally, despite vehemently insisting that he is not a troll, many
people quite understandingly have great difficulty distinguishing
his public behavior from that of a troll.

Alok

unread,
Jul 9, 2006, 5:24:28 PM7/9/06
to
Mallor wrote:
> Alok wrote:
> >
> > Since most lisp developers use indentation to make code readable
> > anyway, would it be possible to combine parens and indentation to
> > produce a cleaner syntax that can be as easily parsed by the lisp
> > compiler/interpreter? The readability of such code would increase a lot
> > (at least for a beginner like me).
>
> This is all red herring. Parens are what people whine about because
> they haven't seen something *else* compelling about Lisp.

(Don't (you get it), (((too many) parens ) together ) (can be)
((intimidating)) (to someone (who primarily) (codes in c or c++?) ((And
unless) (you get (used to it.)))))

Go figure.

Pascal Bourguignon

unread,
Jul 9, 2006, 5:24:49 PM7/9/06
to
Ari Johnson <iamt...@gmail.com> writes:
> I think that there are a few barriers to entry when it comes to Lisp
> and, in particular, Common Lisp. Watch any Lisp newbie and you'll see
> a few of them in action.
>
> The first one is picking a Lisp. There are multiple implementations
> of CL as well as multiple Schemes among which to choose. That's
> barrier #1.
>
> Let's assume that someone picks CL and decides on an implementation.
> What does installing that implementation (either from its own binary
> distribution package or from a Linux distribution; let's assume
> apt-get install sbcl) actually give the user? Not much, in any sense
> that he's used to. Conceptually, Lisp is so different that this forms
> another barrier to entry in the user's mind. #2.
>
> Now that you have a Lisp installed, you need to figure out how to do
> useful things with it. The first thing you need to figure out how to
> do is a hello world. In the majority of programming languages, this
> consists of one of the following two processes:
>
> 1. Create source file with code in it. Compile source file. Run
> resulting executable file.

Sorry, I don't see the difference with for example C:

[pjb@thalassa tmp]$ cat > example.lisp <<EOF

(defun fact (x) (if (<= x 1) 1 (* x (fact (1- x)))))

(defun main ()
(format *query-io* "~&Enter a positive integer:")
(let ((n (read *query-io*)))
(if (integerp n)
(format *standard-output* "~&~D! = ~D~%" n (fact n))
(format *error-output* "~&~S is not an integer~%")))
(ext:exit 0))

EOF
[pjb@thalassa tmp]$ clisp -i example.lisp \
-x '(ext:saveinitmem "example" :executable t :norc t :quiet t
:init-function (function main))'
;; Loading file /home/pjb/.clisprc.lisp ...
;; Reading ASDF packages from /home/pjb/asdf-central-registry.data...
; loading system definition from /usr/local/share/lisp/packages/net/sourceforge/cclan/asdf-install/asdf-install.asd into #<PACKAGE ASDF0>
; registering #<SYSTEM ASDF-INSTALL #x2048BF3E> as ASDF-INSTALL
0 errors, 0 warnings
;; Loading file example.lisp ...
;; Loaded file example.lisp
3652616 ;
912614
[pjb@thalassa tmp]$ [pjb@thalassa tmp]$ ./example
Enter a positive integer:15
15! = 1307674368000
[pjb@thalassa tmp]$ cat > example.c <<EOF
#include <stdio.h>

int fact(int x){if(x<=1){return(1);}else{return(x*fact(x-1));}}

int main(void){
printf("\nEnter a positive integer:");
{int n;
if(scanf("%d",&n)==1){
printf("\n%d! = %d\n",n,fact(n));
}else{
fprintf(stderr,"\nInput data is not an integer\n");
}
return(0);
}}
EOF
[pjb@thalassa tmp]$ gcc -o example example.c
[pjb@thalassa tmp]$ ./example

Enter a positive integer:15
15

15! = 2004310016
[pjb@thalassa tmp]$


That is, beside the fact that in lisp you have more options to
generate the executable than in C, and that the lisp version gives
correct results...


> 2. Create source file with code in it. Chmod 755. Run source file.

I fail to see the difference with bash or any other scripting language...


[pjb@thalassa tmp]$ cat > example <<EOF
#!/usr/local/bin/clisp -ansi -q
(format t "Hello World!")
EOF
[pjb@thalassa tmp]$ chmod 755 example
[pjb@thalassa tmp]$ ./example
Hello World!
[pjb@thalassa tmp]$ cat > example <<EOF
#!/bin/bash
printf "Hello World!\n"
EOF
[pjb@thalassa tmp]$ chmod 755 example
[pjb@thalassa tmp]$ ./example
Hello World!
[pjb@thalassa tmp]$


> Neither of these applies directly to Lisp, and that is why you get so
> many questions of the form "How do I compile my Lisp file into an
> executable?" and of the form "How do I run my Lisp script?" This is
> barrier #3.

Bull shit.


> Next up, once the newbie figures out the REPL, he still wants to use
> process 1 or 2 above. This is obnoxious and he doesn't think that
> Lisp gets him anything in the way of workflow that Ruby, Python, Perl,
> or even C doesn't already provide. Barrier #4.

Well, this is more a pedagogical problem than anything else. What are
the teachers doing?


> So we show him SLIME. It's nifty, but how much difference is there
> between the following?
>
> Edit, Save, Compile, Switch to REPL, Run
> -and-
> Edit, Save, Switch to shell, [Compile,] Run

Oh? You switch to the REPL? I just use C-x C-e, directly from the
source buffer, so it's more like:

Edit, Run. (and if it's OK, Save).


> [...]


> It really has very little to do with having a killer app, IMHO.

--
__Pascal Bourguignon__ http://www.informatimago.com/

IMPORTANT NOTICE TO PURCHASERS: The entire physical universe,
including this product, may one day collapse back into an
infinitesimally small space. Should another universe subsequently
re-emerge, the existence of this product in that universe cannot be
guaranteed.

Damien Kick

unread,
Jul 9, 2006, 5:33:04 PM7/9/06
to
David Steuber wrote:

> I think the reason languages like Ruby are developed is to avoid the
> parens. Yes, I'm being serious. What turns people off of Lisp more
> than anything else does seem to be the parens.
>
> I would call BS, but what turned me off of python was the whitespace.

See, but the thing with the whitespace of Python is that the problems
that it can introduce are more than just aesthetic. At work, we're
using a tool written in Python and the fact that Python uses whitespace
is causing problems with SCM. I can't remember the details of an
example at the moment but the problem comes when two people end up
editing the same section of code on different branches which then get
merged together. If I recall correctly, it "works" something like this.
The original code might look like this in Lisp.

(progn
(do-this)
(do-that)
(do-the-other))

Joe changes the code to become.

(progn
(when the-right-condition-p
(do-this)
(do-that)
(do-the-other)))

Jen changes the code to become.

(progn
(do-this)
(unless do-not-do-that-p
(do-that))
(do-the-other))

When they are merged, one winds up with something like

(progn
(when the-right-condition-p
(do-this)
(unless do-not-do-that-p
(do-that))
(do-the-other)))

The indentation is wrong. However, in Lisp, the parentheses retain
enough information that we know what was intended.

(progn
(when the-right-condition-p
(do-this)
(unless do-not-do-that-p
(do-that))
(do-the-other)))

However, with Python, this is not true; the indentation is the only
information about block structure.

Alok

unread,
Jul 9, 2006, 5:33:36 PM7/9/06
to

Thanks. This is a very good tip. I am simply amazed by the number of
features in VIM. You get to learn something new everyday. Google is
lucky to have Bram working for them.

I only wish Emacs had differentiation between editing mode and various
other useful non editing modes like in VIM. That would probably halve
the number of times that we have to key in ctrl-x for every god damned
thing. (And no, viper does not provide a tenth of the useful commands
that VIM does.)

funkyj

unread,
Jul 9, 2006, 7:24:31 PM7/9/06
to

Ari Johnson wrote:

> So we show him SLIME. It's nifty, but

Barrier #n:

but he is using clisp in cygwin and when he (foolishly) upgrades from
clisp 2.35 to clisp 2.38 SLIME breaks. He tries getting the latest
SLIME from CVS but that is no good, SLIME is still broken. He posts
about his problems on the gmane.lisp.slime.devel but his posts are
ignored.

I guess if he was a CL and/or emacs lisp expert he might fix what ever
broke himself but since he is a newbie he'll have to go back to limping
along without slime.

funkyj

unread,
Jul 9, 2006, 8:06:11 PM7/9/06
to

Alok wrote:

> (Don't (you get it), (((too many) parens ) together ) (can be)
> ((intimidating)) (to someone (who primarily) (codes in c or c++?) ((And
> unless) (you get (used to it.)))))

No, I don't get it and 99% of my coding experience is in C and C++.
I'm a lisp newbie.

The parens are for the lisp parser and your text editor. The
indentation is for the human reader. When lisp or C/C++ is properly
indented it is easy to read. When it is indented incorrectly it is
hard to read.

When you write code (C or Lisp) your editor shows you what your closing
paren (or curly brace) matches so it is easy enough put the right
number of closing parens. When you read the code you mostly ignore the
parens and pay attention to the indentation.

--fj

Ari Johnson

unread,
Jul 9, 2006, 8:17:17 PM7/9/06
to
Pascal Bourguignon <p...@informatimago.com> writes:

Google for "lisp tutorial" and tell me the index of the hit that
explains in the first chapter or two clisp's ext:saveinitmem. This is
not about what is possible, it is about what is available to a newbie.
The fact that you are personally capable of doing something in no way
indicates that a newbie will figure it out right away without a lot of
coaxing.

>> 2. Create source file with code in it. Chmod 755. Run source file.
>
> I fail to see the difference with bash or any other scripting language...
>
>
> [pjb@thalassa tmp]$ cat > example <<EOF
> #!/usr/local/bin/clisp -ansi -q
> (format t "Hello World!")
> EOF
> [pjb@thalassa tmp]$ chmod 755 example
> [pjb@thalassa tmp]$ ./example
> Hello World!
> [pjb@thalassa tmp]$ cat > example <<EOF
> #!/bin/bash
> printf "Hello World!\n"
> EOF
> [pjb@thalassa tmp]$ chmod 755 example
> [pjb@thalassa tmp]$ ./example
> Hello World!
> [pjb@thalassa tmp]$

>> Neither of these applies directly to Lisp, and that is why you get so
>> many questions of the form "How do I compile my Lisp file into an
>> executable?" and of the form "How do I run my Lisp script?" This is
>> barrier #3.
>
> Bull shit.

There's no need for profanity in a constructive discussion.

Anyhow, change what I said to "Neither of these applies directly to
the Lisp way of doing things." No sane Lisp programmer would tell you
to write all your code, compile it down to a single executable, and
run it. You build it up in smaller pieces and test them as you go.
That's one of the chief advantages of programming in Lisp, and it just
plain does not translate into "write, compile, run the whole thing,
and go hunting for bugs" the way other languages encourage you to do
things.

>> Next up, once the newbie figures out the REPL, he still wants to use
>> process 1 or 2 above. This is obnoxious and he doesn't think that
>> Lisp gets him anything in the way of workflow that Ruby, Python, Perl,
>> or even C doesn't already provide. Barrier #4.
>
> Well, this is more a pedagogical problem than anything else. What are
> the teachers doing?

The teachers? Some of them do just fine. However, there is an
occasional rotten apple who refuses to step back and instead offers
help on a "one strike and you're out" basis. They do things like
swear at people who come with good-natured questions and curiosity
about how they, too, can become Lisp masters and have a leg up on all
other programmers. Rather than telling someone "if you read my code
and the error message you got, you will very quickly understand why
you got the error message," they revise the code to include a
destructive file system operation. While the point made by that
behavior is perfectly valid, the pedagogical value is negative.

Moreover, this wasn't about the teachers at all. It was about the
various barriers to entry that a newcomer faces when starting out with
Lisp. Whether someone mentors him past those barriers or not, they
are there just the same.

That said, it would be great if there were easy-to-find tutorials that
got people past the real barriers to entry. Lisp newbies don't need
to spend hours reading through ridiculously long tutorials on how to
write a recursive function. If they have programming experience, they
know all that and are not held back by it at all. Where they need
hand-holding is summarized in my previous message on this thread.

>> So we show him SLIME. It's nifty, but how much difference is there
>> between the following?
>>
>> Edit, Save, Compile, Switch to REPL, Run
>> -and-
>> Edit, Save, Switch to shell, [Compile,] Run
>
> Oh? You switch to the REPL? I just use C-x C-e, directly from the
> source buffer, so it's more like:
>
> Edit, Run. (and if it's OK, Save).

With SLIME, the REPL is right there and lets me play with the
functions I just compiled without having to add testing code to my
source file. Your preferences may vary, but the process is no
different between what I do and what you do any more than there is a
difference between the Edit, Save, Switch to shell, and Run method and
the Edit, Save, and ":!./file.name.rb" (in vim) method of working with
Ruby (or any other language) code.

Pascal Bourguignon

unread,
Jul 9, 2006, 8:51:59 PM7/9/06
to
Ari Johnson <iamt...@gmail.com> writes:
> Google for "lisp tutorial" and tell me the index of the hit that
> explains in the first chapter or two clisp's ext:saveinitmem. This is
> not about what is possible, it is about what is available to a newbie.
> The fact that you are personally capable of doing something in no way
> indicates that a newbie will figure it out right away without a lot of
> coaxing.

I tried C tutorial and Lisp tutorial and tried the first hit.

Truely enough, the C tutorial starts with:
http://www.physics.drexel.edu/courses/Comp_Phys/General/C_basics/c_tutorial.html

Let's be polite and start by saluting the world! Type the following
program into your favorite editor:


#include < stdio.h>

void main()
{
printf("\nHello World\n");
}

Save the code in the file hello.c, then compile it by typing:

gcc hello.c

This creates an executable file a.out, which is then executed simply
by typing its name. The result is that the characters `` Hello World''
are printed out, preceded by an empty line.

while the Lisp tutorial starts with:
http://www.notam02.no/internt/cm-sys/cm-2.2/doc/clt.html

Symbols

A symbol is just a string of characters. There are restrictions
on what you can include in a symbol and what the first character
can be, but as long as you stick to letters, digits, and hyphens,
you'll be safe. (Except that if you use only digits and possibly
an initial hyphen, LISP will think you typed an integer rather
than a symbol.) Some examples of symbols:

a
b
c1
foo
bar
baaz-quux-garply

Some things you can do with symbols follow. (Things in bold after
a > prompt are what you type to the LISP interpreter, while other
things are what the LISP interpreter prints back to you. The ; is
LISP's comment character: everything from a ; to the end of line
is ignored.)

> (setq a 5) ;store a number as the value of a symbol
5
> a ;take the value of a symbol
5
> (let ((a 6)) a) ;bind the value of a symbol temporarily to 6
6
> a ;the value returns to 5 once the let is finished
5
> (+ a 6) ;use the value of a symbol as an argument to a function
11
> b ;try to take the value of a symbol which has no value
Error: Attempt to take the value of the unbound symbol B


Ok, the Lisp tutorial fails to tell the student to launch the lisp
system. Just before that, it just mentionned that:

Note: This tutorial introduction to Common Lisp was written for
the CMU environment, so some of the details of running lisp toward
the end may differ from site to site.

without ever mentionning that to launch CMU CL, you have to type: lisp RET
(much less that to lauch sbcl, you have to type: sbcl RET
and that to lauch clisp, you have to type: clisp RET).


So already, Common Lisp addresses people with 1 IQ point more than C
programmers :-(.


But I still fail to see how that prevent people to _learn_. The
first thing any Lisp tutorial I've ever seen teaches, is how to enter
forms at the REPL and watch for the result or error message printed.
Quite naturally. Or do you want lisp tutorials to teach the C process?


By the way, this is not different to the L.S.E. Manual I learned
programming with in 1975, or any BASIC tutorial at about the same
time: the first thing you learned was how to use the REPL! The
strange way was to save a file (or a card deck) and to send it to the
compiler to get a listing of error messages five minutes (or a day)
later.

> [...]


> Anyhow, change what I said to "Neither of these applies directly to
> the Lisp way of doing things." No sane Lisp programmer would tell you
> to write all your code, compile it down to a single executable, and
> run it. You build it up in smaller pieces and test them as you go.
> That's one of the chief advantages of programming in Lisp, and it just
> plain does not translate into "write, compile, run the whole thing,
> and go hunting for bugs" the way other languages encourage you to do
> things.

Yes, as it's explained in any lisp tutorial. Or do you mean that
people try to learn lisp without reading lisp books and lisp
tutorials?


> [...]


> That said, it would be great if there were easy-to-find tutorials that
> got people past the real barriers to entry.

Go tell that to Google! Why a search for lisp tutorial doesn't return
as first hit: http://www.cliki.net/Online%20Tutorial ?


> Lisp newbies don't need
> to spend hours reading through ridiculously long tutorials on how to
> write a recursive function. If they have programming experience, they
> know all that and are not held back by it at all. Where they need
> hand-holding is summarized in my previous message on this thread.

Perhaps you could write this hand-holding tutorial? You could even
insert it in first position on that cliki.net page.


--
__Pascal Bourguignon__ http://www.informatimago.com/

"You cannot really appreciate Dilbert unless you read it in the
original Klingon"

Ari Johnson

unread,
Jul 9, 2006, 9:32:10 PM7/9/06
to
"funkyj" <fun...@gmail.com> writes:

In my long post, I completely forgot about this important issue: Lisp
systems are fragile. How often do we hear from people who got
themselves up and running with CL just to break it by upgrading the
wrong piece of software at the wrong time? This isn't so much a
barrier to entry as a barrier to staying inside once you're through
the door, but it definitely sucks when all you want to do is enjoy
Lisp and you spend hours keeping your development system up-to-date
and fixing the breakage, or you just sit back on an old version of
everything because you don't dare upgrade.

By comparison, the only time upgrading any other language's
development system has caused problems for me has been when the
language itself changed and my code was no longer valid (C++ namespace
strictness is a good example of this, from GCC 3.x).

Ari Johnson

unread,
Jul 9, 2006, 9:47:20 PM7/9/06
to
Pascal Bourguignon <p...@informatimago.com> writes:

> So already, Common Lisp addresses people with 1 IQ point more than C
> programmers :-(.

It's not so much that. It's the fact that it's hard to teach old dogs
new tricks, and most people come to Lisp after years of experience
with other languages. They have 1 IQ point *more* as evidenced by the
fact that they found Lisp, but it will take a bit of work to break
them of their bad thinking habits.

> But I still fail to see how that prevent people to _learn_. The
> first thing any Lisp tutorial I've ever seen teaches, is how to enter
> forms at the REPL and watch for the result or error message printed.
> Quite naturally. Or do you want lisp tutorials to teach the C process?

I don't want to teach the C process at all. I want to more gently
explain the fact that you don't have to write, compile, and run whole
programs in order to write programs. I want to gently introduce
people to writing, compiling, and running individual functions and
seeing immediately the productivity benefits.

But I also want to reassure people that you can produce as the final
product of your work something that can easily be handled and thrown
around. If all you ever show people is the REPL, they will have a
hard time believing that they can do anything practical with it.

It's like giving someone a very ugly food that tastes wonderful - the
human brain has a hard time letting us enjoy an experience when it is
freaked out about something superficial to the experience.

> By the way, this is not different to the L.S.E. Manual I learned
> programming with in 1975, or any BASIC tutorial at about the same
> time: the first thing you learned was how to use the REPL! The
> strange way was to save a file (or a card deck) and to send it to the
> compiler to get a listing of error messages five minutes (or a day)
> later.

I started to learn programming on BASIC in the mid-80's. However,
once I discovered real programming languages like C, I lost touch with
the REPL concept. Most people who started like that did the same.
Those who started later never learned about REPLs and only know one
way of doing things. That is the audience that is trying Lisp -
anyone who started learning Lisp in 1975 doesn't have to be convinced
of a thing here.

>> Anyhow, change what I said to "Neither of these applies directly to
>> the Lisp way of doing things." No sane Lisp programmer would tell you
>> to write all your code, compile it down to a single executable, and
>> run it. You build it up in smaller pieces and test them as you go.
>> That's one of the chief advantages of programming in Lisp, and it just
>> plain does not translate into "write, compile, run the whole thing,
>> and go hunting for bugs" the way other languages encourage you to do
>> things.
>
> Yes, as it's explained in any lisp tutorial. Or do you mean that
> people try to learn lisp without reading lisp books and lisp
> tutorials?

See above. It tastes great and it's good for the health, but it looks
so weird that the brain refuses to accept that it has any positive
qualities whatsoever.

>> That said, it would be great if there were easy-to-find tutorials that
>> got people past the real barriers to entry.
>
> Go tell that to Google! Why a search for lisp tutorial doesn't return
> as first hit: http://www.cliki.net/Online%20Tutorial ?

Google pagerank works largely by who links to you and what they say
about you. If people were talking about it being useful, it would
show up on Google. :)

>> Lisp newbies don't need
>> to spend hours reading through ridiculously long tutorials on how to
>> write a recursive function. If they have programming experience, they
>> know all that and are not held back by it at all. Where they need
>> hand-holding is summarized in my previous message on this thread.
>
> Perhaps you could write this hand-holding tutorial? You could even
> insert it in first position on that cliki.net page.

I'm not good at holding hands. I may try, nonetheless, but not if
people here think I'm so far off-base as to make anything I write
based upon these assumptions totally worthless.

Ken Tilton

unread,
Jul 9, 2006, 10:42:21 PM7/9/06
to

Ari Johnson wrote:
> Pascal Bourguignon <p...@informatimago.com> writes:
>
>
>>So already, Common Lisp addresses people with 1 IQ point more than C
>>programmers :-(.
>
>
> It's not so much that. It's the fact that it's hard to teach old dogs
> new tricks,

I know. Every time this stupid thread comes up someone has to point out
that newbies could get the free trial version of Lispworks* in order to
check out Lisp and be pretty far down the frickin road to salvation and
ecstasy before they ran out of heap or stack or whichever way they
cripple it.

At which point they have the usual no-brainer choice that eludes most
people of paying a few bucks for Lispworks Pro* or spending ten times as
much on hours of BS with free (as in my time, apparently) solutions.

hth, kenny

* Or on win32 and Linux, ACL.

Pascal Bourguignon

unread,
Jul 9, 2006, 11:32:13 PM7/9/06
to
Ari Johnson <iamt...@gmail.com> writes:
> In my long post, I completely forgot about this important issue: Lisp
> systems are fragile. How often do we hear from people who got
> themselves up and running with CL just to break it by upgrading the
> wrong piece of software at the wrong time? This isn't so much a
> barrier to entry as a barrier to staying inside once you're through
> the door, but it definitely sucks when all you want to do is enjoy
> Lisp and you spend hours keeping your development system up-to-date
> and fixing the breakage, or you just sit back on an old version of
> everything because you don't dare upgrade.
>
> By comparison, the only time upgrading any other language's
> development system has caused problems for me has been when the
> language itself changed and my code was no longer valid (C++ namespace
> strictness is a good example of this, from GCC 3.x).

It's _exactly_ the same with C-based systems. Everytime you update
some C library, some things falls appart. The difference may be that
you don't update as often C stuff.

Now indeed, non-lisp software is more often packaged with dependencies
maintenance software, so it may happen that some updates works
slightly more smoothly. But almost everytime I type apt-get, emerge,
rpm, or whatever, I've had to deal with breakage.


--
__Pascal Bourguignon__ http://www.informatimago.com/

"Debugging? Klingons do not debug! Our software does not coddle the
weak."

Ari Johnson

unread,
Jul 9, 2006, 11:40:41 PM7/9/06
to
Pascal Bourguignon <p...@informatimago.com> writes:

> Ari Johnson <iamt...@gmail.com> writes:
>> In my long post, I completely forgot about this important issue: Lisp
>> systems are fragile. How often do we hear from people who got
>> themselves up and running with CL just to break it by upgrading the
>> wrong piece of software at the wrong time? This isn't so much a
>> barrier to entry as a barrier to staying inside once you're through
>> the door, but it definitely sucks when all you want to do is enjoy
>> Lisp and you spend hours keeping your development system up-to-date
>> and fixing the breakage, or you just sit back on an old version of
>> everything because you don't dare upgrade.
>>
>> By comparison, the only time upgrading any other language's
>> development system has caused problems for me has been when the
>> language itself changed and my code was no longer valid (C++ namespace
>> strictness is a good example of this, from GCC 3.x).
>
> It's _exactly_ the same with C-based systems. Everytime you update
> some C library, some things falls appart. The difference may be that
> you don't update as often C stuff.

Things that depend on the library may need to be recompiled, but it's
rare that your *development system* falls apart because you updated a
library. When was the last time that gcc refused to run because you
upgraded a library?

> Now indeed, non-lisp software is more often packaged with dependencies
> maintenance software, so it may happen that some updates works
> slightly more smoothly. But almost everytime I type apt-get, emerge,
> rpm, or whatever, I've had to deal with breakage.

And it sucks when it happens with other languages, too. I never said
Lisp was the only place this could happen or that it sucks more when
it happens to Lisp, but it does *seem* to happen more often and
newbies are afraid of it already.

Pascal Bourguignon

unread,
Jul 9, 2006, 11:51:02 PM7/9/06
to
Ari Johnson <iamt...@gmail.com> writes:

> Pascal Bourguignon <p...@informatimago.com> writes:
>
>> So already, Common Lisp addresses people with 1 IQ point more than C
>> programmers :-(.
>
> It's not so much that. It's the fact that it's hard to teach old dogs
> new tricks, and most people come to Lisp after years of experience
> with other languages. They have 1 IQ point *more* as evidenced by the
> fact that they found Lisp, but it will take a bit of work to break
> them of their bad thinking habits.

Yes, that's why I asked what the teachers were doing. Lisp should be
taught amongst the firsts programming languages, if not the first in
all schools...


>> Go tell that to Google! Why a search for lisp tutorial doesn't return
>> as first hit: http://www.cliki.net/Online%20Tutorial ?
>
> Google pagerank works largely by who links to you and what they say
> about you. If people were talking about it being useful, it would
> show up on Google. :)

Ah! That was before Google. I mean, what good does it do to put
links to sites, when they can decay, and when Google indexes them and
crawls them automatically? People just go to google to find them
anyways!


>> Perhaps you could write this hand-holding tutorial? You could even
>> insert it in first position on that cliki.net page.
>
> I'm not good at holding hands. I may try, nonetheless, but not if
> people here think I'm so far off-base as to make anything I write
> based upon these assumptions totally worthless.

Well, one thing is true, is that you cannot write a one-size-fit-all
tutorial. So it cannot be bad if you write one more tutorial,
specifically targetted to the public you've identified.

--
__Pascal Bourguignon__ http://www.informatimago.com/

PLEASE NOTE: Some quantum physics theories suggest that when the
consumer is not directly observing this product, it may cease to
exist or will exist only in a vague and undetermined state.

David Steuber

unread,
Jul 10, 2006, 4:36:11 AM7/10/06
to
Damien Kick <dk...@earthlink.net> writes:

> David Steuber wrote:
>
> > I think the reason languages like Ruby are developed is to avoid the
> > parens. Yes, I'm being serious. What turns people off of Lisp more
> > than anything else does seem to be the parens.
> > I would call BS, but what turned me off of python was the whitespace.
>
> See, but the thing with the whitespace of Python is that the problems
> that it can introduce are more than just aesthetic. At work, we're
> using a tool written in Python and the fact that Python uses
> whitespace is causing problems with SCM.

Examples elided.

> However, with Python, this is not true; the indentation is the only
> information about block structure.

Thanks for providing a technical justification for not liking Python's
indentation :-)

Ari also has made some good points regarding the hurdles of getting
into Lisp on current popular computing environments. And Ken has made
a good counter point about which Lisp to recommend.

Of course many Linux users (and perhaps even more Windows users) don't
like to pay for software. And no one likes crippleware.

My Lisp odyssey was only complicated by the fact that I know precisely
zero Lisp programmers IRL not counting those I met in Boston last
year. I had to go it alone with only USENET and IRC as a means of
getting help and I didn't always follow the solicited advice (always a
bad idea).

Now I have a friend who is looking at Lisp. He has me telling him
that Emacs + SLIME + SBCL are the way to go. He has another friend
telling him that Chicken and other Schemes are the way to go. Also my
friend is a long time Vi user and has been using Eclipse for Java.

Lisp's culture and workflow are so different from the popular
languages that that in and of itself provides a barrier to entry.
Switching from Perl to Python or Ruby is not really a paradigm shift.
Even going from C to a scripting language is not a big step. Not like
going from a Unix/Windows development mentality to a Lisp mentality
where Emacs + SLIME or even Lispwork's IDE is quite a leap.

I'm not criticizing Lisp here. The problem doesn't lie with Lisp.
The problem lies with getting people to think differently about how
development should be done. And for every Lisper, there will be a
thousand others telling you to go a different way. In other words,
it's a social issue, not a technical issue. Technology is not likely
to solve the issue.

It really would be better if programmers started with Lisp first (even
Logo). Of course CL would be ideal. You don't have to hit it all at
once.

I don't think Lisp will ever be mainstream. It doesn't help that SICP
calls Scheme Lisp without making any distinction between Scheme and
CL. It also doesn't help that Java is like a giant tinker toy where
you can just throw together a bunch of jars and "write" a program.
The critical mass just isn't there and I'm not so sure proselytizing
will help.

As far as killer apps go, Lisp does have a few. Killer apps don't
really help. They don't hurt. They are good publicity. But in the
big picture, they seem like the exception rather than the rule.

Emacs is another interesting issue. I won't get into editor wars.
I'll just point out that there is residence to people wanting to learn
this rather large program. Emacs has it's own CUA rules. It is the
same on every system I've ever used which is great for when Emacs is a
major or even the primary application one runs. For everyone else it
sucks because it is not defaulting to the host system's CUA
conventions. At least Unix doesn't have any conventions ;-).

So Emacs can be a hurdle. I use Carbon Emacs from CVS on my Mac. I
bet that I am one of only a few Mac users who do that. I also have my
keys set up to match Emacs in a terminal or on X. I'm not using OS X
key bindings. I am not using Aquamacs.

Perhaps I've made things harder on myself by not simply getting
Lispworks. Be that as it may, I can at least hop onto #lisp to get
quick answers when I am having problems. This works because Emacs +
SLIME + SBCL is popular there. I have support because there is a
localized concentration of users who can help me.

So there is a social solution after all. The only problem is that too
few Lisp newbies know about it.

The general rule is that Lisp does not fit potential user
expectations. It is not bundled with systems by default so that users
can just jummp in. Getting it set up is a different process (although
not really all that different) from what the script kiddies are used
to. People are lazy. People have unrealistic expectations.

To sum up, people see the parens and think, "yuck!" People are then
shocked that Emacs or some other Lisp aware editor is an essential
tool (yet they don't mind Eclispe). Lisp has different deployment
issues because you can't count on having liblisp.so with a
standardized ABI and APIs on Unix systems or lisp.dll on Windows.
People think that the first method of application development they see
is The Right Way.

Enough rambling. I'm sure I've posted plenty that can be picked
apart. The fact is, I haven't put together a focus group to prove any
of my assertions. I don't think anyone has.

Stefan Scholl

unread,
Jul 10, 2006, 5:00:36 AM7/10/06
to
Pascal Bourguignon <p...@informatimago.com> wrote:

> Ari Johnson <iamt...@gmail.com> writes:
>> That said, it would be great if there were easy-to-find tutorials that
>> got people past the real barriers to entry.
>
> Go tell that to Google! Why a search for lisp tutorial doesn't return
> as first hit: http://www.cliki.net/Online%20Tutorial ?

Because Lisp is ooooooooold. And there are a lot of crappy, old
tutorials out there. Linked before the dawn of time.

There are a lot of people who want to tell you that they had
learned once in their lifetime. And to prove this, they link to
one of the crappy, old tutorials.


Stefan Scholl

unread,
Jul 10, 2006, 5:01:52 AM7/10/06
to
Ari Johnson <iamt...@gmail.com> wrote:
> Pascal Bourguignon <p...@informatimago.com> writes:
>> So already, Common Lisp addresses people with 1 IQ point more than C
>> programmers :-(.
>
> It's not so much that. It's the fact that it's hard to teach old dogs
> new tricks, and most people come to Lisp after years of experience
> with other languages. They have 1 IQ point *more* as evidenced by the
> fact that they found Lisp, but it will take a bit of work to break
> them of their bad thinking habits.

How many of "them" had found Lisp after Paul Graham told them
they could get rich? :-)

Alok

unread,
Jul 10, 2006, 5:08:50 AM7/10/06
to
Hey, maybe you are right about ignoring parens and focusing on
indentation. But it has not come to me natuarlly so far. Even though
most of my C/C++ code is also indented, it has some differences in the
brackets used in different contexts like {, [, (, and in other places
->, . for member function calls etc. Somehow that is less confusing
than just parens for everything.

Having said that, it would take me just a little more time to get used
to the parens in Lisp.

Bob Felts

unread,
Jul 10, 2006, 11:32:36 AM7/10/06
to
Ken Tilton <kent...@gmail.com> wrote:

> Ari Johnson wrote:
> > Pascal Bourguignon <p...@informatimago.com> writes:
> >
> >
> >>So already, Common Lisp addresses people with 1 IQ point more than C
> >>programmers :-(.
> >
> >
> > It's not so much that. It's the fact that it's hard to teach old dogs
> > new tricks,
>
> I know.

I call shennanigans. I'm 51 years old, been programming for over 30,
and didn't find Lisp hard. Mind-expanding, perhaps, but not hard. The
difference isn't age -- it's desire.

> Every time this stupid thread comes up someone has to point out
> that newbies could get the free trial version of Lispworks* in order to
> check out Lisp and be pretty far down the frickin road to salvation and
> ecstasy before they ran out of heap or stack or whichever way they
> cripple it.
>
> At which point they have the usual no-brainer choice that eludes most
> people of paying a few bucks for Lispworks Pro*

$1,100 + $275 (maintenance) + $50 (shipping) = $1,425 isn't "a few
bucks". Especially with two kids in college. If you think otherwise,
I'll be happy to tell you how you can make a donation.

> or spending ten times as
> much on hours of BS with free (as in my time, apparently) solutions.
>

Aquamacs + SLIME + OpenMCL/SBCL takes less time to get running than the
equivalent in dollars of buying LispWorks.

Thomas A. Russ

unread,
Jul 10, 2006, 12:51:40 PM7/10/06
to
Ari Johnson <iamt...@gmail.com> writes:

> By comparison, the only time upgrading any other language's
> development system has caused problems for me has been when the
> language itself changed and my code was no longer valid (C++ namespace
> strictness is a good example of this, from GCC 3.x).

Well, I guess you haven't tried building systems using Tomcat and MySQL
and Java JDK and your own Java code which also uses MySQL. You can't
necessarily just upgrade one of those, because of various
cross-dependencies.

--
Thomas A. Russ, USC/Information Sciences Institute

Thomas A. Russ

unread,
Jul 10, 2006, 12:46:35 PM7/10/06
to
"Alok" <alok....@gmail.com> writes:

> I know Vim and Emacs can show matching begin (or end) paren when the
> cursor is on the corresponding end (or begin) paren. But my cursor is
> not always on the end or begin paren, when I read code.

When you read code, it should be primarily the indentation that guides
you. Properly indented code is done for human readers, since the
whitespace doesn't make any difference to the Lisp reader.

Emacs will "properly" indent code for you as you write it, and also
afterwards using the formating commands. All you need to know how to do
is put the line endings in the right place.

> Is there an option to highlight the whole expression demarcated by
> parens? Like show the current expression region with a slightly bluish
> tint background? (Emacs has something for showing the current mark
> region in a different color M-x transient-mark-mode)

Well, you can double-click at the beginning of a particular s-expression
and have the whole thing highlighted.


--
Thomas A. Russ, USC/Information Sciences Institute

"properly" is in quotes because some people (like me) have a few nits to
pick about certain indentation (like IF), but you can customize those
away if you need to. At least it does most of the indenting to my
liking out of the box.

Marco Baringer

unread,
Jul 10, 2006, 1:33:39 PM7/10/06
to
Stefan Scholl <ste...@no-spoon.de> writes:

> UCW needs (needed?) you to collect differnt libraries in their
> development stage, direct from some darcs repositories.

http://common-lisp.net/project/ucw/ucw-boxset.tar.gz

18 different libraries to be exact, direct from whatever location is
useful, tarballs when possible darcs/cvs repos otherwise.

--
-Marco
Ring the bells that still can ring.
Forget your perfect offering.
There is a crack in everything.
That's how the light gets in.
-Leonard Cohen

Ken Tilton

unread,
Jul 10, 2006, 1:47:38 PM7/10/06
to

Bob Felts wrote:
> Ken Tilton <kent...@gmail.com> wrote:
>
>
>>Ari Johnson wrote:
>>
>>>Pascal Bourguignon <p...@informatimago.com> writes:
>>>
>>>
>>>
>>>>So already, Common Lisp addresses people with 1 IQ point more than C
>>>>programmers :-(.
>>>
>>>
>>>It's not so much that. It's the fact that it's hard to teach old dogs
>>>new tricks,
>>
>>I know.
>
>
> I call shennanigans. I'm 51 years old, been programming for over 30,
> and didn't find Lisp hard. Mind-expanding, perhaps, but not hard. The
> difference isn't age -- it's desire.

Exactly. The people over which Ari is wringing his hands are just
tire-kickers.

>
>
>>Every time this stupid thread comes up someone has to point out
>>that newbies could get the free trial version of Lispworks* in order to
>>check out Lisp and be pretty far down the frickin road to salvation and
>>ecstasy before they ran out of heap or stack or whichever way they
>>cripple it.
>>
>>At which point they have the usual no-brainer choice that eludes most
>>people of paying a few bucks for Lispworks Pro*
>
>
> $1,100 + $275 (maintenance) + $50 (shipping) = $1,425 isn't "a few
> bucks". Especially with two kids in college. If you think otherwise,
> I'll be happy to tell you how you can make a donation.

Oh, yeah, this is the other thing you old dawgs cannot be trained off.
Sorry, Charlie. $1425 is /nothing/ comapred to what other craftsmen are
paying for their tools. You want be a serious photographer?
Cabinetmaker? Guitarist? For $1425? PWUUAHAHAHAHAHAHAHHA!

Kent is right: the real virus is the FSF idea that we should not have to
pay for software. It has sucked immeasurable man hours right down the
drain. Free my ass.

Or maybe you /want/ a bunch of tirekickers to be using Lisp. Nah, they
just track in a lot of dirt.

>
>
>> or spending ten times as
>>much on hours of BS with free (as in my time, apparently) solutions.
>>
>
>
> Aquamacs + SLIME + OpenMCL/SBCL takes less time to get running than the
> equivalent in dollars of buying LispWorks.

Well when you start valuing your time at zero as the FSF has taught you,
sure! And who said the only benefit to Lispworks was in getting it
running? SLIME itself is a crappy substitute for an integrated
environment. How about the add-ons you get with Lispworks?

And I don't even like the Lispworks IDE!!!!

:)

kenny

Aaron Hsu

unread,
Jul 10, 2006, 2:37:23 PM7/10/06
to
"funkyj" <fun...@gmail.com> writes:

>Alok wrote:

>> (Don't (you get it), (((too many) parens ) together ) (can be)
>> ((intimidating)) (to someone (who primarily) (codes in c or c++?)
>> ((And unless) (you get (used to it.)))))

>The parens are for the lisp parser and your text editor. The


>indentation is for the human reader. When lisp or C/C++ is properly
>indented it is easy to read. When it is indented incorrectly it is
>hard to read.

>When you write code (C or Lisp) your editor shows you what your
>closing paren (or curly brace) matches so it is easy enough put the
>right number of closing parens. When you read the code you mostly
>ignore the parens and pay attention to the indentation.

I think this is true for people where Lisp tends to click naturally,
but I think that there is one hurdle here which tends to make it hard
to get rid of the parantheses in a person's mind. When I first begun
to use a Lisp language, it was a nightmare, because I couldn't figure
out how *anything* worked. Being someone naturally pretty good at
figuring stuff out, this through me. I had to spend quite some time
learning as I went through the process of chatting and
reading. Finally I was able to write in Lisp Syntax.

After completing that hurdle, I was still in my Vi mode, where I loved
to use Vi(m). Unfortunately, I was not an expert and making Vi do what
I wanted, and it just didn't work to code Lisp for me. The parantheses
were hard, and indentation was seemingly sporadic.

Finally I used some software that did the indentation for me, and
highlighted my blocks of code as I closed off each block with a
parantheses. This made it immensely easier to work with Lisp
notation. Still, there was something missing, which didn't quite
remove the entire problem of being confused by parantheses. I still
had to type in the closing parantheses, and that still caused me some
grief. I would still make mistakes. I am fairly dedicated, and I was
already sold on this family of languages, so it wasn't hard for me to
deal with this. For others, I would still imagine they would be a
little tired of working with parantheses by now.

It wasn't until I found paredit.el and started to use Emacs and
SLIME48 (I use Scheme48), that the real beauty of the lisp type
workflow started to open up for me. With paredit, parantheses almost
disappeared from my mind. Because the closing of each paranthesis was
already taken care of, and every movement command was based on the
conceptual layout of the program, dealing with syntax in my mind
almost disappeared.

Granted, there are probably many more ways of reaching the same point;
this is only one personal experience. But I am willing to bet that
most people have a hard time getting rid of the parentheses in their
minds because syntax is still so drilled into them that without
additional tools to help them eliminate as much of the syntax being in
the forefront of their mind they just can't get it out. If someone is
able to get rid of the overwhelming burden of focusing on their
parantheses, with a little help from helpful software (for some
definition of helpful), he/she will also likely be able to start
thinking in terms of what the code is saying, rather than how many
nests there are.

Just my personal thoughts, and I could be wrong here. Actually, I am
probably wrong. :-)

- Aaron
--
Aaron Hsu <sp...@sacrificumdeo.net>

Aaron Hsu

unread,
Jul 10, 2006, 2:51:44 PM7/10/06
to
Ari Johnson <iamt...@gmail.com> writes:

>Pascal Bourguignon <p...@informatimago.com> writes:

>> Ari Johnson <iamt...@gmail.com> writes:
>>
>>> Neither of these applies directly to Lisp, and that is why you get so
>>> many questions of the form "How do I compile my Lisp file into an
>>> executable?" and of the form "How do I run my Lisp script?" This is
>>> barrier #3.
>>
>> Bull shit.

>There's no need for profanity in a constructive discussion.

>Anyhow, change what I said to "Neither of these applies directly to
>the Lisp way of doing things." No sane Lisp programmer would tell you
>to write all your code, compile it down to a single executable, and
>run it. You build it up in smaller pieces and test them as you go.
>That's one of the chief advantages of programming in Lisp, and it just
>plain does not translate into "write, compile, run the whole thing,
>and go hunting for bugs" the way other languages encourage you to do
>things.

I do however, find that some people don't really want to talk to a
Lisp programmer first. :-) A TON of people I know out there from other
languages first try to find that one-stop-solves-all-your-problems
website that gives you all the little advice that you want for
starting out. There are a few of these for some of the other
languages and that's what some of these coders want for Lisp. I have
yet to find a really good site directly designed for the newbie
Lisp/Scheme programmer coming from other languages that really deals
with all these issues in an accessible manner. I find a lot of them,
in what I can only assume is an attempt to make them feel comfortable,
seem to side-step some of the methodology and go for the "this is how
you do this in Lisp" direct translation. I believe this is a
mistake. Lisp languages don't work like others, and as such, we
shouldn't hide that fact. We should instead explain the fact clearly
and provide them with the information to understand how this
difference can be used to accomplish the same things in less time. I
believe this is what really messes some coders up. They understand the
basics, such as maybe how an expression works; they might even make it
so far as to find some joy in using a REPL to test things out, but
then they suddenly run into a wall on how to make it all come together
from start to finish with a final project. I think we need something
that helps to describe this general methodology (at least one of the
many methodologies that exist) for the newbie to come in, and see how
the whole process works, that way they have an idea where they are
going, before they start. Hopefully this will intercept some of the
problems that creep in later on.

>With SLIME, the REPL is right there and lets me play with the
>functions I just compiled without having to add testing code to my
>source file. Your preferences may vary, but the process is no
>different between what I do and what you do any more than there is a
>difference between the Edit, Save, Switch to shell, and Run method and
>the Edit, Save, and ":!./file.name.rb" (in vim) method of working with
>Ruby (or any other language) code.

One thing I really like about SLIME and something like MIT-Scheme (I
actually use SLIME48 and Scheme48, but I think this is still
applicable), is the ease with which arbitrary commands can be tested
and run within certain scopes or levels of execution stack. MIT-Scheme
I believe also provides you with the ability to have a REPL at each
level of execution during debugging. This changes the whole process
from a Edit->Compile->Debug->Repeat to an dynamic testing where
editing, testing, and debugging all occur through an interactive
environment. When you explain the power of this to some of the C or
PHP coders, they really like it. :-) If you just point out that SLIME
gives you a REPL and allows you to send your code to a REPL, it
doesn't really seem all that cool. When you see the dynamic
capabilities of an IDE like that though, that's when things begin to
look really cool. :-)

Aaron Hsu

unread,
Jul 10, 2006, 2:58:40 PM7/10/06
to
Pascal Bourguignon <p...@informatimago.com> writes:

>Ari Johnson <iamt...@gmail.com> writes:
>> Google for "lisp tutorial" and tell me the index of the hit that
>> explains in the first chapter or two clisp's ext:saveinitmem. This is
>> not about what is possible, it is about what is available to a newbie.
>> The fact that you are personally capable of doing something in no way
>> indicates that a newbie will figure it out right away without a lot of
>> coaxing.
>

>while the Lisp tutorial starts with:
>http://www.notam02.no/internt/cm-sys/cm-2.2/doc/clt.html

[...]

>Ok, the Lisp tutorial fails to tell the student to launch the lisp
>system. Just before that, it just mentionned that:
>
> Note: This tutorial introduction to Common Lisp was written for
> the CMU environment, so some of the details of running lisp toward
> the end may differ from site to site.
>
>without ever mentionning that to launch CMU CL, you have to type: lisp RET
>(much less that to lauch sbcl, you have to type: sbcl RET
> and that to lauch clisp, you have to type: clisp RET).

There are some Scheme tutorials which are not like this though, and
for basic introduction, I think the concepts of the REPL and other
things can be adequately taught on most modern Lisp-based systems. I
find DrScheme one example of a program which makes it very easy for a
newcomer to start getting an understanding of REPL's and such without
becoming too overwhelmed. There are also a good deal of tutorials on
using it.

I don't know of such a thing in the Common Lisp arena, but I imagine
it would be useful to have some site that explained this to people, as
it really does confuse them.

>> Lisp newbies don't need
>> to spend hours reading through ridiculously long tutorials on how to
>> write a recursive function. If they have programming experience, they
>> know all that and are not held back by it at all. Where they need
>> hand-holding is summarized in my previous message on this thread.

>Perhaps you could write this hand-holding tutorial? You could even
>insert it in first position on that cliki.net page.

I think a good handholding tutorial would be nice. :-) At least it
would answer some of the problems that aren't really answered by
currently existing tutorials.

Aaron Hsu

unread,
Jul 10, 2006, 3:11:30 PM7/10/06
to
David Steuber <da...@david-steuber.com> writes:

>I don't think Lisp will ever be mainstream. It doesn't help that
>SICP calls Scheme Lisp without making any distinction between Scheme
>and CL. It also doesn't help that Java is like a giant tinker toy
>where you can just throw together a bunch of jars and "write" a
>program. The critical mass just isn't there and I'm not so sure
>proselytizing will help.

You know, I didn't get the feeling that SICP did put an ambiguous
light on Scheme vs. CL.

In this book the use of "program" is focused on the creation,
execution, and study of programs written in a dialect of Lisp
for execution on a digital computer. Using Lisp we restrict or
limit not what we may program, but only the notation for our
program descriptions.

[...]

Lisp is a survivor, having been in use for about a quarter of a
century. Among the active programming languages only Fortran has
had a longer life.

[...]

Lisp changes. The Scheme dialect used in this text has evolved
from the original Lisp and differes from the latter in several
important ways, [...]. [1]

You'll notice that in this quotation, the use of Lisp here seems to
refer to the whole family of Lisp languages, starting with the
earliest up to the then current languages of the time, and they are
clear to identify Scheme as a dialect of Lisp, not as the whole being
of Lisp as it exists at the time of writing. Their statements
necessitate the existance of other dialects of Lisp, and so, they have
simply left out the mentioning of those other dialects, rather than
attempting to equivocate.

- Aaron

[1] "Structure and Interpretation of Computer Programs", second
edition. Pages xi--xiii.

--
Aaron Hsu <sp...@sacrificumdeo.net>

Aaron Hsu

unread,
Jul 10, 2006, 3:17:10 PM7/10/06
to
"Alok" <alok....@gmail.com> writes:
>funkyj wrote:
>> Alok wrote:
>>
>> > (Don't (you get it), (((too many) parens ) together ) (can be)
>> > ((intimidating)) (to someone (who primarily) (codes in c or c++?)
>> > ((And unless) (you get (used to it.)))))
>>
>> No, I don't get it and 99% of my coding experience is in C and C++.
>> I'm a lisp newbie.
>>
>> The parens are for the lisp parser and your text editor. The
>> indentation is for the human reader. When lisp or C/C++ is
>> properly indented it is easy to read. When it is indented
>> incorrectly it is hard to read.
>>
>> When you write code (C or Lisp) your editor shows you what your
>> closing paren (or curly brace) matches so it is easy enough put the
>> right number of closing parens. When you read the code you mostly
>> ignore the parens and pay attention to the indentation.
>
>Hey, maybe you are right about ignoring parens and focusing on
>indentation. But it has not come to me natuarlly so far. Even though
>most of my C/C++ code is also indented, it has some differences in
>the brackets used in different contexts like {, [, (, and in other
>places ->, . for member function calls etc. Somehow that is less
>confusing than just parens for everything.
>
>Having said that, it would take me just a little more time to get
>used to the parens in Lisp.

I believe you find the other less confusing because you are using the
Parantheses still in the same manner as you are using the other
brackets in other languages. IMO, to really get to the point where the
parantheses don't bother you, you have to alter the way you think
about syntax. Lisp's Syntax is so elementary and simple, in general,
that you mostly don't have to think about it at all, and the
parantheses are just pointing out groups and expressions. If you then
get yourself a nice editing environment that allows you to move and
edit based on the meaning or concept of your program, I think you will
find it easier to ignore the parantheses.

For doing that kind of editing, I find Emacs and paredit.el [1] to be
a rather good combination. :-)

- Aaron

[1] <http://mumble.net/~campbell/emacs/>

--
Aaron Hsu <sp...@sacrificumdeo.net>

Zach Beane

unread,
Jul 10, 2006, 3:52:02 PM7/10/06
to
Ari Johnson <iamt...@gmail.com> writes:

> So we show him SLIME. It's nifty, but how much difference is there
> between the following?
>
> Edit, Save, Compile, Switch to REPL, Run
> -and-

> Edit, Save, Switch to shell, [Compile,] Run

That's not how Lisp and SLIME are used.

In particular, you don't have to stop an application to fix problems
or extend its functionality; you just write or rewrite a function
definition and load it into the running environment.

Zach

David Steuber

unread,
Jul 10, 2006, 6:23:51 PM7/10/06
to
Aaron Hsu <sp...@sacrificumdeo.net> writes:

> You'll notice that in this quotation, the use of Lisp here seems to
> refer to the whole family of Lisp languages, starting with the
> earliest up to the then current languages of the time, and they are
> clear to identify Scheme as a dialect of Lisp, not as the whole being
> of Lisp as it exists at the time of writing. Their statements
> necessitate the existance of other dialects of Lisp, and so, they have
> simply left out the mentioning of those other dialects, rather than
> attempting to equivocate.

A fair point. I suspect that another barrier is Lisp's age. People
are likely to think that newer is better.

--
The lithobraker. Zero distance stops at any speed.
This post uses 100% post consumer electrons and 100% virgin photons.

At 2.6 miles per minute, you don't really have time to get bored.
--- Pete Roehling on rec.motorcycles

funkyj

unread,
Jul 10, 2006, 6:46:17 PM7/10/06
to

Damien Kick wrote:

> However, with Python, this is not true; the indentation is the only
> information about block structure.

Exactly!

Copying a block of Python code from one place and pasting it into
another and then adjusting the indentation also makes me nervous.

Another problem is that everywhere I work most people insert spaces for
indentation but there are those few people who insert tabs (wittingly
or unwittingly I'm not sure). With Python this is a recipe for
disaster! Life is just so much easier if you add a little bit of
redundant information (parens or curly braces) the explicitly specify
the code block structure.

The indentation thing is not enough to make me prefer Perl or TCL
(blech) but I would be happier with parens or curly braces delimiting
blocks.

Bob Felts

unread,
Jul 10, 2006, 7:20:08 PM7/10/06
to
Ken Tilton <kent...@gmail.com> wrote:

[...]

> >
> >>Every time this stupid thread comes up someone has to point out that
> >>newbies could get the free trial version of Lispworks* in order to check
> >>out Lisp and be pretty far down the frickin road to salvation and
> >>ecstasy before they ran out of heap or stack or whichever way they
> >>cripple it.
> >>
> >>At which point they have the usual no-brainer choice that eludes most
> >>people of paying a few bucks for Lispworks Pro*
> >
> >
> > $1,100 + $275 (maintenance) + $50 (shipping) = $1,425 isn't "a few
> > bucks". Especially with two kids in college. If you think otherwise,
> > I'll be happy to tell you how you can make a donation.
>
> Oh, yeah, this is the other thing you old dawgs cannot be trained off.
> Sorry, Charlie. $1425 is /nothing/ comapred to what other craftsmen are
> paying for their tools. You want be a serious photographer?
> Cabinetmaker? Guitarist? For $1425? PWUUAHAHAHAHAHAHAHHA!

And if it gets to the point where I want to release software for sale
written in Lisp, and I think I can make back my investment, then I'll
spring for LispWorks. I am certainly not a newbie, but given everything
else I need to spend money on, LispWorks isn't it right now.

>
> Kent is right: the real virus is the FSF idea that we should not have to
> pay for software. It has sucked immeasurable man hours right down the
> drain. Free my ass.
>

I don't want to add up all of the money I've spent on software (and
hardware); it might depress me.

> Or maybe you /want/ a bunch of tirekickers to be using Lisp. Nah, they
> just track in a lot of dirt.
>

I'll go wash my feet, now.

> >
> >
> >> or spending ten times as
> >>much on hours of BS with free (as in my time, apparently) solutions.
> >>
> >
> >
> > Aquamacs + SLIME + OpenMCL/SBCL takes less time to get running than the
> > equivalent in dollars of buying LispWorks.
>
> Well when you start valuing your time at zero as the FSF has taught you,
> sure!

You presume too much. I used a base rate of $125/hr. I make my living
writing software (well, I used to before I climbed the ladder); I very
much think that those who write software ought to be paid for it.

> And who said the only benefit to Lispworks was in getting it
> running?

It wasn't me, whoever it was.

> SLIME itself is a crappy substitute for an integrated
> environment.

Just curious, but why? I have the LispWorks personal edition; I prefer
Emacs + SLIME + Lisp.

> How about the add-ons you get with Lispworks?

CAPI is very much of interest to me.

>
> And I don't even like the Lispworks IDE!!!!
>

I'm not really partial to any IDE.

Luís Oliveira

unread,
Jul 10, 2006, 8:31:03 PM7/10/06
to
Ken Tilton <kent...@gmail.com> writes:
> SLIME itself is a crappy substitute for an integrated environment.

Nonsense. Emacs+paredit+SLIME rock! :-)

--
Luís Oliveira
luismbo (@) gmail (.) com
http://student.dei.uc.pt/~lmoliv/

Damien Kick

unread,
Jul 10, 2006, 9:33:40 PM7/10/06
to
Alok wrote:
> (Don't (you get it), (((too many) parens ) together ) (can be)
> ((intimidating)) (to someone (who primarily) (codes in c or c++?) ((And
> unless) (you get (used to it.)))))

Yes, thankfully the following C code has all kinds of non-parentheses so
it's easy to parse.

#define O(o,k) f(l,9) c[l]= *#k?0x3fe:-1;\
f(l,81) if(*#k){\
if(!(s]&c[o])) Ba(o,k) c[o]&=~(1<<(s]>>10));\
} else if((s]>>l0)&1) c[o]=c[o]+1?-2:l;\
if(*#k) { f(l,81) if(s]>>10||(s]&=c[o]),!s]) Ba(o,k) }\
else f(l,9) l[c]<0||s[c]]>>10||(N(l0,[c]),C++);

So, I cheated a little bit <http://www.mailcom.com/ioccc/winners2005.tgz>...

Ari Johnson

unread,
Jul 10, 2006, 11:05:45 PM7/10/06
to
Zach Beane <xa...@xach.com> writes:

On the Lisp side, I was referring to per-function rather than
per-application as it is done in most other languages. But I was
writing from the perspective of a hypothetical newbie. You have to
get him past the point where he can't tell the difference between the
two lists of operations above. That's the barrier to entry I was
trying to describe.

Ari Johnson

unread,
Jul 10, 2006, 11:14:01 PM7/10/06
to
Damien Kick <dk...@earthlink.net> writes:

The difference is that most C code is not written like that, whereas
Lisp makes it impossible to avoid a high parenthesis density. This is
not a real problem, but it can be intimidating to a newcomer.


Also confusing for newbies is the code-is-data thing. How often are
there questions from newbies asking complicated questions about QUOTE,
#'LIST, and "What's this error about 'illegal function call' when I
make a list?"

Lisp is just plain weird when you are used to anything else.
Weirdness is off-putting to most people.

Ken Tilton

unread,
Jul 11, 2006, 12:17:49 AM7/11/06
to

Luís Oliveira wrote:
> Ken Tilton <kent...@gmail.com> writes:
>
>>SLIME itself is a crappy substitute for an integrated environment.
>
>
> Nonsense. Emacs+paredit+SLIME rock! :-)
>

Oh, no. I bad-mouthed a #lisp project, here come the yobbos!

Robert Uhl

unread,
Jul 11, 2006, 6:31:30 PM7/11/06
to
Ken Tilton <kent...@gmail.com> writes:
>
> Kent is right: the real virus is the FSF idea that we should not have
> to pay for software.

Of course, that's never been the FSF's idea. In fact, IIRC it still
sells emacs, gcc and so forth for prices comparable to that of
LispWorks.

The FSF's position is that, having purchased software, the user should
be able to modify it and share it--in other words, that purchase should
lead to ownership,r ather than rental. It's more complex than that, of
course, but that's my short version.

--
Robert Uhl <http://public.xdi.org/=ruhl>
Progressive (adj): Value-free; tolerant; non-judgemental.
E.g. traditional archery instruction methods spent tedious hours
teaching the archer to hit a bulls-eye. Progressive methods achieved
better results by telling the student archer to shoot in the manner he
or she found most comfortable, then calling whatever the arrow hit the
bulls-eye. --Fred Gilham

Michael J. Forster

unread,
Jul 12, 2006, 10:00:00 AM7/12/06
to
On 2006-07-09 15:33:16 -0500, Stefan Scholl <ste...@no-spoon.de> said:

[...]
> And webactions belong to AllegroServe. Which either costs a lot
> of money and your first born son for Allegro CL, or you can try
> to beat Portable AllegroServe. Last time I tried portable
> allegroserve I had do send a patch. Someone made the CMUCL part
> of it specific to Debian. I couldn't use the vanilla CMUCL with
> it.

Curious. That must have been quite some time ago. For the past year,
we've developed and deployed with the paserve from CVS, running
under LW/Linux, LW/Windows, CMUCL/FreeBSD, and LW/OS X. Yes,
I had to make a one-line patch to correct a problem with HTTP
AUTH under LW, but that's not bad for 'free beer'.

As for this incessant bitching (i.e. not you alone) about having to actually
*pay* for the fruit of another person's sweat, well, hasn't anyone
considered that we might already have (another) killer app courtesy of
the fine paycheque-demanding folks at Franz? Hint: It's called
AllegroCache, and it makes the ORM in Rails look like the naive
dead-end it really is*.

Cheers,

Mike


* If you don't understand the problem with Rails' ORM, or any
'data access layer' for that matter, Will Hartung summarised it nicely:
http://groups.google.ca/group/comp.lang.lisp/msg/b760065b20f08d8b

--
Michael J. Forster <mi...@sharedlogic.ca>

Michael J. Forster

unread,
Jul 12, 2006, 10:25:45 AM7/12/06
to
On 2006-07-09 12:20:32 -0500, "Mallor" <SeaFu...@gmail.com> said:

> This is all red herring. Parens are what people whine about because
> they haven't seen something *else* compelling about Lisp. What
> converts people is killer apps. If, for instance, I showed game
> developers amazing things in OpenGL using Lisp that they couldn't do
> some other way, and it was really really important stuff, they'd use
> it. Failing a killer app, it's just a language. Not having anything
> to distinguish itself, people whine about parens. So stop worrying
> about perceived paren problems. Start worrying about killer apps.
> Most of the popularized scripty languages delivered a compelling web
> framework. Ruby's got Rails, Python's got Zope, etc.
>
> People will use the most broken crufty shit of an interface in the
> world, if it actually *DOES* something important to them.

Especially when what's important is "doing less than the competition --
intentionally." [1] Unfortunately, my competition comprise the
barely-graduated come web designer or MS Access developer; I have
to do *more*, and for that, RoR and the like do not cut it.

[1] http://www.37signals.com/

-Mike

goose

unread,
Jul 12, 2006, 1:08:40 PM7/12/06
to
Ken Tilton wrote:

<snipped>

> Oh, yeah, this is the other thing you old dawgs cannot be trained off.
> Sorry, Charlie. $1425 is /nothing/ comapred to what other craftsmen are
> paying for their tools. You want be a serious photographer?
> Cabinetmaker? Guitarist? For $1425? PWUUAHAHAHAHAHAHAHHA!
>

Thats more than a months salary for targetting a single
platform. Almost 4 months salary if you want 3 platforms.

For a product which doesn't even approach the usefulness
of the free offerings (see gcc) I'd definitely think twice
about spending more than my car is worth.

I am also a serious guitarist - total equipment value
consisting of 2 electric guitars, an amp and a low-powered
speaker, a digital tuner and a tuning pipe, and one acoustic
guitar lets me enjoy my hobby; total cost under 300USD.

All bought second hand; I can't buy any crappy lisp
implementation second hand though.

> Kent is right: the real virus is the FSF idea that we should not have to
> pay for software. It has sucked immeasurable man hours right down the
> drain. Free my ass.

Well, the idea that a closed source piece of software is worth
more than I make in 3 months, and is worth more than my car,
and in fact is worth more than an overseas holiday, well ...
the FSF has done something good then; else my C and C++
compilers might be costing about the same as well.

You know something is wrong when the biggest asset you purchase
is your home, and the second biggest is software for your hobby.

>
> Or maybe you /want/ a bunch of tirekickers to be using Lisp. Nah, they
> just track in a lot of dirt.
>

Maybe you should get off the internet then, you freeloader :-)
I mean you are, after all, reading this message (and
getting all your internet access) under the auspices(sp?)
of the FSF. Surely you don't think that ISPs like giving
out money for commercial licences? Also, stop using
google, as they have benefitted as well.

OTOH, commercial lisp implementations have contributed so
little to my life that I won't notice if they all went
bellyup and disappeared overnight.

(actually, that might not be such a bad idea. Keep overcharging
and sooner or later you'll die of attrition as young blood
comes into lisp-world, sees what is being charged for commercial
lisps and simply uses sbcl, or cmucl, or clisp, etc. I won't
be surprised if lisp vendors stop getting new customers).

> Well when you start valuing your time at zero as the FSF has taught you,
> sure!

Luckily, the FSF has taught me that I don't need to beg greedy
corps for 30 year old technology if I am willing to share
my work.

goose,
:-)

Michael J. Forster

unread,
Jul 12, 2006, 2:32:03 PM7/12/06
to
On 2006-07-12 12:08:40 -0500, "goose" <ru...@webmail.co.za> said:

> Ken Tilton wrote:
>
> <snipped>
>
>> Oh, yeah, this is the other thing you old dawgs cannot be trained off.
>> Sorry, Charlie. $1425 is /nothing/ comapred to what other craftsmen are
>> paying for their tools. You want be a serious photographer?
>> Cabinetmaker? Guitarist? For $1425? PWUUAHAHAHAHAHAHAHHA!
>>
>
> Thats more than a months salary for targetting a single
> platform. Almost 4 months salary if you want 3 platforms.

Well, duh! Encourage your market to value your skilled work, charge a fair
price for it, and your salary will increase. It's called economics,
dude. If you
can't see how 'free beer' (as opposed 'free speech') software drives down
your earnings too, then you deserve what you get.


> For a product which doesn't even approach the usefulness
> of the free offerings (see gcc) I'd definitely think twice
> about spending more than my car is worth.

I think you do not know of what you babble.


> I am also a serious guitarist - total equipment value
> consisting of 2 electric guitars, an amp and a low-powered
> speaker, a digital tuner and a tuning pipe, and one acoustic
> guitar lets me enjoy my hobby; total cost under 300USD.
>
> All bought second hand; I can't buy any crappy lisp
> implementation second hand though.

Oh dear. Too bad you can't make a real living as a programmer anymore.


>> Kent is right: the real virus is the FSF idea that we should not have to
>> pay for software. It has sucked immeasurable man hours right down the
>> drain. Free my ass.
>
> Well, the idea that a closed source piece of software is worth
> more than I make in 3 months, and is worth more than my car,
> and in fact is worth more than an overseas holiday, well ...
> the FSF has done something good then; else my C and C++
> compilers might be costing about the same as well.
>
> You know something is wrong when the biggest asset you purchase
> is your home, and the second biggest is software for your hobby.

Oh, wait, I think...


>>
>> Or maybe you /want/ a bunch of tirekickers to be using Lisp. Nah, they
>> just track in a lot of dirt.
>>
>
> Maybe you should get off the internet then, you freeloader :-)
> I mean you are, after all, reading this message (and
> getting all your internet access) under the auspices(sp?)
> of the FSF. Surely you don't think that ISPs like giving
> out money for commercial licences? Also, stop using
> google, as they have benefitted as well.

... yep. There it is. Troll. Damn. I really need to learn to read the
entire test before bangin' out the answers :-)

Ken Tilton

unread,
Jul 12, 2006, 3:00:49 PM7/12/06
to

goose wrote:
> Ken Tilton wrote:
>
> <snipped>
>
>>Oh, yeah, this is the other thing you old dawgs cannot be trained off.
>>Sorry, Charlie. $1425 is /nothing/ comapred to what other craftsmen are
>>paying for their tools. You want be a serious photographer?
>>Cabinetmaker? Guitarist? For $1425? PWUUAHAHAHAHAHAHAHHA!
>>

> For a product which doesn't even approach the usefulness
> of the free offerings (see gcc) ....

If you think C is comparable to Lisp, what makes me think we are not
going to get very far in agreeing on the value of a Lisp environment?

Besides, you completely missed the point: gcc is free because someone
gave it away (and continues to develop and give away again) as a
deliberate political act with the intended effect I have already
bemoaned: infecting people with the idea that software has no value (or
that programmer time has no value). of course gcc has value, and the
price of zero is an irrational price, but great for achieving the
intended infection. Of course a lot of great programmer time went into
developing it, and that cost was recovered in political gain.

I mean, just look at how hard you are arguing now for /nothing/ other
than a house or car costing $1425. Yikes, the infection has spread!

Meanwhile society suffers because everyone is out there slaving away
trying to get their "free" OS to recognize a mouse or DVD drive if it
even will, when they could be hacking into the White House computer
system to get evidence for the war crimes trial.

tsk tsk, Mr. Stallman.

kenny

ps. I am trying to get an estimate of end-user hours spent on getting
their "free" as in "my time" Linux systems to run. Any leads, anyone? k

Pascal Bourguignon

unread,
Jul 12, 2006, 3:11:44 PM7/12/06
to

Ken Tilton <kent...@gmail.com> writes:
> Meanwhile society suffers because everyone is out there slaving away
> trying to get their "free" OS to recognize a mouse or DVD drive if it
> even will, when they could be hacking into the White House computer
> system to get evidence for the war crimes trial.
>
> tsk tsk, Mr. Stallman.

1- the consolidation of the computer industry and computer platforms
started well before Stallman got the idea of freedom software.

2- Mr. Stallman and FSF's actions didn't prevent competing platforms
(eg NeXT, BeOS) to be designed and developed, and had no effect in
their demise (on the contrary, AFAIK, these platforms benefited
greatly from freedom software.

3- If you see a user suffereing slaving away to get his freedom OS to
recognize a mouse or a DVD, you can always advise him to buy MacOSX
or MS-Windows. Or you could even advise him to _buy_ a freedom OS
distribution with 90-day support and even to _pay_ for additionnal
support to get his mouse or DVD working.

4- Actually, contrarily to MS-Windows where you can't go anywhere
(economically) to get some strange hardware or software
interoperate with MS-Windows, (because only Microsoft has the
sources, and Microsoft wouldn't bother with a single user), with
freedom software, the poor user has the freedom to PAY and PAY and
PAY as much as he wants to anybody he wants to get his mouse or DVD
working. There are millions of professionnals knowing enough *BSD
or Linux to make his mouse or DVD working, for a fee.

--
__Pascal Bourguignon__ http://www.informatimago.com/

"Debugging? Klingons do not debug! Our software does not coddle the
weak."

Steven E. Harris

unread,
Jul 12, 2006, 3:19:38 PM7/12/06
to
Ken Tilton <kent...@gmail.com> writes:

> I am trying to get an estimate of end-user hours spent on getting
> their "free" as in "my time" Linux systems to run.

Anecdotally, it's hard to classify, as a lot of this effort can also
be considered pleasurable tinkering, given the right proclivities. Is
that activity then the cost or the benefit of such a system?

--
Steven E. Harris

Pascal Bourguignon

unread,
Jul 12, 2006, 3:22:45 PM7/12/06
to

Or if you don't care, you can just _buy_ a freedom OS distribution,
_buy_ the exact hardware it's certified to run on, install it with two
clicks, and no (or one at most) reboot. You can even _buy_
pre-installed Linux systems, for even less of your "free" time.


--
__Pascal Bourguignon__ http://www.informatimago.com/

The world will now reboot. don't bother saving your artefacts.

Michael J. Forster

unread,
Jul 12, 2006, 3:36:36 PM7/12/06
to

I should clarify that, while I, too, flamed the 'goose' over this, I have no
problem with free-as-in-speech software. To be honest, I've spent
significantly less of 'my time' deploying, securing, and maintaining
Linux, FreeBSD, OpenBSD servers than comparable Windows NT/2K
configurations. Because of this, I choose not to treat them as
free-as-in-beer -- I happily donate to the FreeBSD project.

Jack Unrue

unread,
Jul 12, 2006, 3:42:54 PM7/12/06
to
On Wed, 12 Jul 2006 15:00:49 -0400, Ken Tilton <kent...@gmail.com> wrote:
>
> ps. I am trying to get an estimate of end-user hours spent on getting
> their "free" as in "my time" Linux systems to run. Any leads, anyone?

If you assume for a second that Linux is superior overall to, let's say,
Windows, then wouldn't you rather have people using the superior system
even if there is some extra work involved? Because the technology is
what matters, right?

(hint #1 this is a trick question, hint #2 remember what newsgroup this is)

--
Jack Unrue

Robert Uhl

unread,
Jul 12, 2006, 3:58:38 PM7/12/06
to
Ken Tilton <kent...@gmail.com> writes:
>
> Besides, you completely missed the point: gcc is free because someone
> gave it away (and continues to develop and give away again) as a
> deliberate political act with the intended effect I have already
> bemoaned: infecting people with the idea that software has no value
> (or that programmer time has no value).

That is, I believe, libel: the FSF does not deliberately intend to
propound the idea that software has no value, nor the idea that
programmer time has no value. That is perhaps an accidental effect of
its philosophy, but not one which it supports. E.g. it sells free
software for quite a pretty penny, and for quite some time supported
itself by selling programmer time.

`When you wake up in the morning, Pooh,' said Piglet at last,
`what's the first thing you say to yourself?'
`What's for breakfast?' said Pooh. `What do you say, Piglet?'
`I say, I wonder what's going to happen exciting today?' said Piglet.
Pooh nodded thoughtfully. `It's the same thing,' he said.
--A.A. Milne

Bob Felts

unread,
Jul 12, 2006, 3:48:50 PM7/12/06
to
Ken Tilton <kent...@gmail.com> wrote:

[...]

>

> Besides, you completely missed the point: gcc is free because someone
> gave it away (and continues to develop and give away again) as a
> deliberate political act with the intended effect I have already
> bemoaned: infecting people with the idea that software has no value (or
> that programmer time has no value).

For a different view, may I recommend Spolsky's "Strategy Letter V",
http://www.joelonsoftware.com/articles/StrategyLetterV.html. Supporting
open source software can also be an act of commoditizing your
"complements" so that you can sell more of your product.


Ken Tilton

unread,
Jul 12, 2006, 5:10:34 PM7/12/06
to

Let's just count up the hours. If they have fun getting their Linux to
build, they would have fun hacking the White House as well.

Btw, the next task is pricing those hours. OK, the FSF has their price,
zero. I'd like to hear some others. :) One FS guy at the Lispnyk meeting
suggested $10/hr. Uncomfortably close to burger flipping, I think.

kenny

Ken Tilton

unread,
Jul 12, 2006, 5:12:06 PM7/12/06
to

Pascal Bourguignon wrote:
> "Steven E. Harris" <s...@panix.com> writes:
>
>
>>Ken Tilton <kent...@gmail.com> writes:
>>
>>
>>>I am trying to get an estimate of end-user hours spent on getting
>>>their "free" as in "my time" Linux systems to run.
>>
>>Anecdotally, it's hard to classify, as a lot of this effort can also
>>be considered pleasurable tinkering, given the right proclivities. Is
>>that activity then the cost or the benefit of such a system?
>
>
> Or if you don't care, you can just _buy_ a freedom OS distribution,
> _buy_ the exact hardware it's certified to run on, install it with two
> clicks, and no (or one at most) reboot. You can even _buy_
> pre-installed Linux systems, for even less of your "free" time.

OK, so your answer is zero hours have in fact been spent by end-users
configuring their systems?

<sigh>

kenny

Jack Unrue

unread,
Jul 12, 2006, 5:12:25 PM7/12/06
to

Never mind, don't waste your time on that. All I'm saying is,
people try to convince others to run Linux for valid reasons,
including their belief that Linux is better -- just like folks
advocate Lisp over other languages, because they believe it's
better. Even though it's not quite the same out-of-the-box
exeperience for newbies.

/me resolves not to post any more non-constructive posts
any more.

--
Jack Unrue

Ken Tilton

unread,
Jul 12, 2006, 5:16:37 PM7/12/06
to

Jack Unrue wrote:
> On Wed, 12 Jul 2006 15:00:49 -0400, Ken Tilton <kent...@gmail.com> wrote:
>
>>ps. I am trying to get an estimate of end-user hours spent on getting
>>their "free" as in "my time" Linux systems to run. Any leads, anyone?
>
>
> If you assume for a second that Linux is superior overall to, let's say,

> Windows, ...

look, obviously there is a second round of flaming after we establish
the cost to society of thousands (tens of thousands?) of lemmings
obediently "tinkering" away hundreds of hours each just to get their
system to recognize the mouse.

Right now I am just wondering if anyone has the number? How many folks
are running Linux, and what is the distribution from Pascal's inspired
"zero" up to my estimate of, well, if he is going to be silly... how
about five hundred hours?

kenny (looking for real, not silly numbers... I'll ask jeeves...)

Ken Tilton

unread,
Jul 12, 2006, 5:17:51 PM7/12/06
to

Robert Uhl wrote:
> Ken Tilton <kent...@gmail.com> writes:
>
>>Besides, you completely missed the point: gcc is free because someone
>>gave it away (and continues to develop and give away again) as a
>>deliberate political act with the intended effect I have already
>>bemoaned: infecting people with the idea that software has no value
>>(or that programmer time has no value).
>
>
> That is, I believe, libel:

I look forward to deposing Stallman. :)

kenny

Ken Tilton

unread,
Jul 12, 2006, 5:24:39 PM7/12/06
to

I only got as far as:

"Secondly, by using the free-as-in-beer argument, these advocates try to
believe that they are not subject to the rules of economics because
they've got a nice zero they can multiply everything by."

Thank you.

" Here's an example. When Slashdot asked Linux developer Moshe Bar if
future Linux kernels would be compatible with existing device drivers,
he said that they didn't need to. "Proprietary software goes at the
tariff of US$ 50-200 per line of debugged code. No such price applies to
OpenSource software." Moshe goes on to claim that it's OK for every
Linux kernel revision to make all existing drivers obsolete, because the
cost of rewriting all those existing drivers is zero. This is completely
wrong."

Thank you.

" He's basically claiming that spending a small amount of programming
time making the kernel backwards compatible is equivalent to spending a
huge amount of programming time rewriting every driver, because both
numbers are multiplied by their "cost," which he believes to be zero.
This is a prima facie fallacy."

Word.

" The thousands or millions of developer hours it takes to revise every
existing device driver are going to have to come at the expense of
something."

Hacking the White House?

"Debugged code is NOT free, whether proprietary or open source. Even if
you don't pay cash dollars for it, it has opportunity cost, and it has
time cost. There is a finite amount of volunteer programming talent
available for open source work, and each open source project competes
with each other open source project for the same limited programming
resource, and only the sexiest projects really have more volunteer
developers than they can use. To summarize, I'm not very impressed by
people who try to prove wild economic things about free-as-in-beer
software, because they're just getting divide-by-zero errors as far as
I'm concerned."

Divide-by-zero errors, I love it. Gotta use that from now on.

Thx, kenny

Pascal Bourguignon

unread,
Jul 12, 2006, 6:10:28 PM7/12/06
to
Ken Tilton <kent...@gmail.com> writes:

> OK, so your answer is zero hours have in fact been spent by end-users
> configuring their systems?

Basically, yes. By definition, "end-users" don't have the capacities
and inclination to configure their systems.


--
__Pascal Bourguignon__ http://www.informatimago.com/

ADVISORY: There is an extremely small but nonzero chance that,
through a process known as "tunneling," this product may
spontaneously disappear from its present location and reappear at
any random place in the universe, including your neighbor's
domicile. The manufacturer will not be responsible for any damages
or inconveniences that may result.

Pascal Bourguignon

unread,
Jul 12, 2006, 6:15:10 PM7/12/06
to
Ken Tilton <kent...@gmail.com> writes:

> Steven E. Harris wrote:
>> Ken Tilton <kent...@gmail.com> writes:
>>
>>>I am trying to get an estimate of end-user hours spent on getting
>>>their "free" as in "my time" Linux systems to run.
>> Anecdotally, it's hard to classify, as a lot of this effort can also
>> be considered pleasurable tinkering, given the right proclivities. Is
>> that activity then the cost or the benefit of such a system?
>>
>
> Let's just count up the hours. If they have fun getting their Linux to
> build, they would have fun hacking the White House as well.
>
> Btw, the next task is pricing those hours. OK, the FSF has their
> price, zero. I'd like to hear some others. :) One FS guy at the
> Lispnyk meeting suggested $10/hr. Uncomfortably close to burger
> flipping, I think.

You seem to be forgetting something: basically,

people have more time than money.


If they'd had more money than time, we'd all earn more.

Ken Tilton

unread,
Jul 12, 2006, 6:37:20 PM7/12/06
to

Ken Tilton wrote:

>
> Right now I am just wondering if anyone has the number? How many folks
> are running Linux, and what is the distribution from Pascal's inspired
> "zero" up to my estimate of, well, if he is going to be silly... how
> about five hundred hours?
>
> kenny (looking for real, not silly numbers... I'll ask jeeves...)
>
>

lessee, number of users counted here:

138,737

estimate by the site guy based on 138,737:

29,000,0000

Hmmm. I am looking for the hardcore nutjobs, and they would all
register, so let's go with a conservative 150k (because it is easier to
multiply with, we are doing serious science here).

jeeves is not being much help. Linux.org helped with this member survey
question: "Just spent four hours configuring your favorite program? Just
figured out a Linux problem that has been stumping you for months?
Post your Linux Success Stories here." I think the fact that they refer
to this as "success" is, well, superb brainwashing. (Is that libel, too?)

Let's see how the pros do:

"PC Week Labs evaluated Red Hat Software Inc.'s Extreme Linux, which
merges the clustering technology of NASA's Beowulf project with Red Hat
Linux. We saw incredible results -- near-linear scaling over eight
Pentium Pro PCs -- but the challenges we faced (and the many hours we
spent) compiling software and configuring systems...."

uh-oh, there goes PB's zero estimate.

"Extreme Linux's low $29 price belies the technology's lofty
requirements, and there is no organized method of technical support for
Extreme Linux, leaving users to post their problems to a newsgroup and
hope that some knowledgeable passerby takes an interest."

Sounding unfreeer and unfreeer all the time.

"In our tests, the Red Hat Linux 5.0 operating system was the easiest
part of the cluster to install (and that was no walk in the park)."

FSF: Plug and plunder? (your free time)

kenny

Ken Tilton

unread,
Jul 12, 2006, 6:39:58 PM7/12/06
to

Pascal Bourguignon wrote:
> Ken Tilton <kent...@gmail.com> writes:
>
>
>>OK, so your answer is zero hours have in fact been spent by end-users
>>configuring their systems?
>
>
> Basically, yes. By definition, "end-users" don't have the capacities
> and inclination to configure their systems.

Well, last night at Lispnyc we were struggling to differentiate the
people who develop the open source and those who just try to install and
use it, came up with end users of Linux. Someone also said "you mean
/configuring/ Linux". Better?

hth, kenny

Pascal Bourguignon

unread,
Jul 12, 2006, 6:45:39 PM7/12/06
to
Ken Tilton <kent...@gmail.com> writes:

> Let's see how the pros do:
>
> "PC Week Labs evaluated Red Hat Software Inc.'s Extreme Linux, which
> merges the clustering technology of NASA's Beowulf project with Red
> Hat Linux. We saw incredible results -- near-linear scaling over eight
> Pentium Pro PCs -- but the challenges we faced (and the many hours we
> spent) compiling software and configuring systems...."
>
> uh-oh, there goes PB's zero estimate.

The end-users spent 0 on it. The professionnal system builders and
administrators worked on it.


> "Extreme Linux's low $29 price belies the technology's lofty
> requirements, and there is no organized method of technical support
> for Extreme Linux, leaving users to post their problems to a newsgroup
> and hope that some knowledgeable passerby takes an interest."
>
> Sounding unfreeer and unfreeer all the time.

It has never been a question of gratis, always of liberties.

With "free software", you are free to PAY anywhom you want to set it up.

With proprietary software, once you've paid upfront, you're not free
anymore, you have to continue paying Microsoft again and again for
less and less bugfixes.

--
__Pascal Bourguignon__ http://www.informatimago.com/

"Logiciels libres : nourris au code source sans farine animale."

Steven E. Harris

unread,
Jul 12, 2006, 6:50:50 PM7/12/06
to
Ken Tilton <kent...@gmail.com> writes:

> How many folks are running Linux, and what is the distribution from
> Pascal's inspired "zero" up to my estimate of, well, if he is going
> to be silly... how about five hundred hours?

Again, it's hard to say because the work is never really done. It's
just a question of at what point one loses interest in improving
things. And note: part of the power of the system is that such
improvement is always possible and always tempting. Is that really the
same as "fixing" something?

In any case, I estimate spending 30 hours to bring a Debian Linux
computer up from bare metal to fully usable. Most of the benefit comes
in the /first hour/. After that, it's a very long tail of discovering
settings I want to change, or thinking of additional software I want
to install and configure. Along the way, everything does work, but
perhaps not exactly as I want it to.

--
Steven E. Harris

Larry Elmore

unread,
Jul 12, 2006, 8:27:40 PM7/12/06
to
Ken Tilton wrote:
>
> ps. I am trying to get an estimate of end-user hours spent on getting
> their "free" as in "my time" Linux systems to run. Any leads, anyone? k

I gave up Windows except for some games because I was sick and tired of
problems with it. I'm quite happy with Linux, thank you. It's saved me
a lot of time and headaches.

--Larry

Ken Tilton

unread,
Jul 12, 2006, 9:24:25 PM7/12/06
to

Oh, don't get me wrong, I hate Windows (and the company behind it). It
is terribly /annoying/. No free lunch over here, either. I just thought
it would inform my next Lispnyk harangue if we could start with at least
one number.

Where it started was some young Bolshevik, upon learning I was
developing commercial software, demanded I give it away for the
betterment of society and live off the crumbs in the FSF model of hoping
someone would come to my cabin in the woods and ask me to revise it for
a few dollars.

At that point I suggested that software is good (as someone pointed out,
the Internet is a nice example) for society, but that all the good
programmers are home doing the technical equivalent of crack "tinkering"
with systems and in the end, Eureka!, the mouse works!

My point: I am sure Mr. Harris could have solved protein folding by now
and had as much fun doing it, if only he had been using Windows and a
commercial Lisp.

:)

kenny

Bob Felts

unread,
Jul 12, 2006, 10:32:46 PM7/12/06
to
Ken Tilton <kent...@gmail.com> wrote:

> Bob Felts wrote:
> > Ken Tilton <kent...@gmail.com> wrote:
> >
> > [...]
> >
> >
> >>Besides, you completely missed the point: gcc is free because someone
> >>gave it away (and continues to develop and give away again) as a
> >>deliberate political act with the intended effect I have already
> >>bemoaned: infecting people with the idea that software has no value (or
> >>that programmer time has no value).
> >
> >
> > For a different view, may I recommend Spolsky's "Strategy Letter V",
> > http://www.joelonsoftware.com/articles/StrategyLetterV.html. Supporting
> > open source software can also be an act of commoditizing your
> > "complements" so that you can sell more of your product.
>
> I only got as far as:
>
> "Secondly, by using the free-as-in-beer argument, these advocates try to
> believe that they are not subject to the rules of economics because
> they've got a nice zero they can multiply everything by."
>

[...]

Then you missed the important bit. IBM, for example, spends a lot of
money on free software -- not to "infect people with the idea that
software has no value." Rather, it's so that people have more money to
spend on IBM's systems and services. Suppose I, a customer, have to buy
software, hardware, and services. If my software cost goes to zero
(because I can use a free GCC as opposed to something I have to pay
for), then I have more money to spend on hardware and services. The
hardware and service vendors have gotta love that.

So, the "intended effect" isn't necessarily to promote the idea that
software has no value. The "intended effect" can be to get people to
have more money to spend more on the product(s) I happen to offer for
sale.

Aaron Hsu

unread,
Jul 12, 2006, 10:53:14 PM7/12/06
to
Ken Tilton <kent...@gmail.com> writes:

>Steven E. Harris wrote:
>> Ken Tilton <kent...@gmail.com> writes:
>>
>>>I am trying to get an estimate of end-user hours spent on getting
>>>their "free" as in "my time" Linux systems to run.
>>
>>Anecdotally, it's hard to classify, as a lot of this effort can also
>>be considered pleasurable tinkering, given the right
>>proclivities. Is that activity then the cost or the benefit of such
>>a system?

[...]

>Btw, the next task is pricing those hours. OK, the FSF has their
>price, zero. I'd like to hear some others. :) One FS guy at the
>Lispnyk meeting suggested $10/hr. Uncomfortably close to burger
>flipping, I think.

I don't think anyone claims that FS is free completely. I find that
there is an excellent variety of FS out there, ranging from completely
free with no support to stuff that costs you an arm and a leg before
you can use it, and comes with extensive support.

For one thing, RHEL I think is an example of Open-source software that
has support, and it works. You pay for it.

Nothing is completely free, it's just a matter of what you value more?
IMO, FS gives you more liberty to spend the least total amount of time
than the comparable NON free piece of code. With one you can pay money
to get things running, or you can spend your own time; with the
proprietary stuff, you either pay money or you don't get it.

- Aaron
--
Aaron Hsu <sp...@sacrificumdeo.net>

David Steuber

unread,
Jul 13, 2006, 1:17:10 AM7/13/06
to
Ken Tilton <kent...@gmail.com> writes:

> ps. I am trying to get an estimate of end-user hours spent on getting
> their "free" as in "my time" Linux systems to run. Any leads, anyone? k

IIRC, it took me about the same time as installing NT from scratch.

OTOH, it took me a while to get going in Lisp. I most likely would
have been better off downloading the Franz trial edition.

--
The lithobraker. Zero distance stops at any speed.
This post uses 100% post consumer electrons and 100% virgin photons.

At 2.6 miles per minute, you don't really have time to get bored.
--- Pete Roehling on rec.motorcycles

Andreas Eder

unread,
Jul 13, 2006, 2:08:34 AM7/13/06
to
Hi Pascal,

>>>>> "Pascal" == Pascal Bourguignon <p...@informatimago.com> writes:

Pascal> 1- the consolidation of the computer industry and computer platforms
Pascal> started well before Stallman got the idea of freedom software.

Do you mean french software?

Pascal> 2- Mr. Stallman and FSF's actions didn't prevent competing platforms
Pascal> (eg NeXT, BeOS) to be designed and developed, and had no effect in
Pascal> their demise (on the contrary, AFAIK, these platforms benefited
Pascal> greatly from freedom software.

French software, again?

Pascal> 3- If you see a user suffereing slaving away to get his freedom OS to
Pascal> recognize a mouse or a DVD, you can always advise him to buy MacOSX
Pascal> or MS-Windows. Or you could even advise him to _buy_ a
Pascal> freedom OS

French OS?

Oh me, nerver tired of playing word games :-)

Andreas

--
Wherever I lay my .emacs, there's my $HOME.

goose

unread,
Jul 13, 2006, 4:18:31 AM7/13/06
to
Michael J. Forster wrote:

> On 2006-07-12 12:08:40 -0500, "goose" <ru...@webmail.co.za> said:
>
> > Ken Tilton wrote:
> >
> > <snipped>
> >
> >> Oh, yeah, this is the other thing you old dawgs cannot be trained off.
> >> Sorry, Charlie. $1425 is /nothing/ comapred to what other craftsmen are
> >> paying for their tools. You want be a serious photographer?
> >> Cabinetmaker? Guitarist? For $1425? PWUUAHAHAHAHAHAHAHHA!
> >>
> >
> > Thats more than a months salary for targetting a single
> > platform. Almost 4 months salary if you want 3 platforms.
>
> Well, duh! Encourage your market to value your skilled work, charge a fair

I'm in South Africa. Thats an above average income.

> price for it, and your salary will increase. It's called economics,
> dude. If you
> can't see how 'free beer' (as opposed 'free speech') software drives down
> your earnings too, then you deserve what you get.


>
>
> > For a product which doesn't even approach the usefulness

> > of the free offerings (see gcc) I'd definitely think twice
> > about spending more than my car is worth.
>
> I think you do not know of what you babble.

I think that you are too used to having a strong currency.
What is made in SA I can afford (fine wine, etc), what has
to be bought elsewhere (lisp tools, aircraft, etc) I cannot.

>
>
> > I am also a serious guitarist - total equipment value
> > consisting of 2 electric guitars, an amp and a low-powered
> > speaker, a digital tuner and a tuning pipe, and one acoustic
> > guitar lets me enjoy my hobby; total cost under 300USD.
> >
> > All bought second hand; I can't buy any crappy lisp
> > implementation second hand though.
>
> Oh dear. Too bad you can't make a real living as a programmer anymore.

I do just fine; which is why the FSF crap spewed above irks me.
If it wasn't for them, us third world countries *still* would
not have any local software developers.

>
>
> >> Kent is right: the real virus is the FSF idea that we should not have to
> >> pay for software. It has sucked immeasurable man hours right down the
> >> drain. Free my ass.
> >
> > Well, the idea that a closed source piece of software is worth
> > more than I make in 3 months, and is worth more than my car,
> > and in fact is worth more than an overseas holiday, well ...
> > the FSF has done something good then; else my C and C++
> > compilers might be costing about the same as well.
> >
> > You know something is wrong when the biggest asset you purchase
> > is your home, and the second biggest is software for your hobby.
>
> Oh, wait, I think...

>From your reply, I doubt that you did.

<snipped>

goose

unread,
Jul 13, 2006, 4:38:04 AM7/13/06
to
Ken Tilton wrote:

> goose wrote:
> > Ken Tilton wrote:
> >
> > <snipped>
> >
> >>Oh, yeah, this is the other thing you old dawgs cannot be trained off.
> >>Sorry, Charlie. $1425 is /nothing/ comapred to what other craftsmen are
> >>paying for their tools. You want be a serious photographer?
> >>Cabinetmaker? Guitarist? For $1425? PWUUAHAHAHAHAHAHAHHA!
> >>
>
> > For a product which doesn't even approach the usefulness
> > of the free offerings (see gcc) ....
>
> If you think C is comparable to Lisp,

Under certain conditions, maybe; in general I don't, which
is why I am making an effort to learn lisp even though
some of the regs on this newsgroup tend to troll with
strawman and/or specious arguments (see the other response
by Micheal SomebodyOrTheOther above).

> what makes me think we are not
> going to get very far in agreeing on the value of a Lisp environment?

A lisp environment can be very valuable, but whereas in *your*
environment its value is *only* a few hours of work (say you work
30 hours to payback the cost of 3 lispwork licences; you can
correct me on the exact rate you bill) down here the /value/
of lispworks has to be countered against 3 or 4 months of
pay, not under a week of pay. I'd gladly give up a week
of my pay to purchase Lispworks but no one would go 3 or 4
months without pay to own just another piece of software
which will most likely be overtaken by the free offerings
in a few years anyway.

Would you?

>
> Besides, you completely missed the point: gcc is free because someone
> gave it away (and continues to develop and give away again) as a
> deliberate political act with the intended effect I have already
> bemoaned: infecting people with the idea that software has no value (or
> that programmer time has no value).

As someone else said, thats possibly Libel! You /can/ of course
make valid arguments against the FSF political goals, but making
valid arguments against goals they do not have is not very smart.

> of course gcc has value, and the
> price of zero is an irrational price, but great for achieving the
> intended infection. Of course a lot of great programmer time went into
> developing it, and that cost was recovered in political gain.
>
> I mean, just look at how hard you are arguing now for /nothing/ other
> than a house or car costing $1425. Yikes, the infection has spread!

Nope; I'm in a third world country; you are presumably in a first
world country where a dollar buys seven times more than my currency.

>
> Meanwhile society suffers because everyone is out there slaving away
> trying to get their "free" OS to recognize a mouse or DVD drive if it
> even will, when they could be hacking into the White House computer
> system to get evidence for the war crimes trial.

?

>
> tsk tsk, Mr. Stallman.
>
> kenny
>

> ps. I am trying to get an estimate of end-user hours spent on getting
> their "free" as in "my time" Linux systems to run. Any leads, anyone? k
>

couple of minutes; I tend to spend about 10 minutes customising
my slackware download before putting it onto a disk so that as much
as possible will be scripted. Each install thereafter requires
me to put the disk in the drive, boot up and leave (a few seconds?)

I then come back when its done and set the IP (30 seconds?).

So, for me, each installation takes not more than a minute
of my attention.

goose,

goose

unread,
Jul 13, 2006, 9:20:58 AM7/13/06
to
Ken Tilton wrote:
> Larry Elmore wrote:
> > Ken Tilton wrote:
> >
> >>
> >> ps. I am trying to get an estimate of end-user hours spent on getting
> >> their "free" as in "my time" Linux systems to run. Any leads, anyone? k
> >
> >
> > I gave up Windows except for some games because I was sick and tired of
> > problems with it. I'm quite happy with Linux, thank you. It's saved me
> > a lot of time and headaches.
>
> Oh, don't get me wrong, I hate Windows (and the company behind it). It

I find it quite hard to bring myself to hate a company;
I find it quite easy to hate their products, though.
It is possible that they release a product that I /like/.

> is terribly /annoying/. No free lunch over here, either. I just thought
> it would inform my next Lispnyk harangue if we could start with at least
> one number.

I've replied to this elsethread.

>
> Where it started was some young Bolshevik, upon learning I was
> developing commercial software, demanded I give it away for the
> betterment of society and live off the crumbs in the FSF model of hoping

I quite agree with you here. One should not be forced or obliged
to give away the fruits of ones labour for any less than what one
is prepared to accept in payment.

The FSF does *not* give away their labour for free; they exchange
it with you for any changes you make to *their* product. *Your*
product you get to keep and sell for any price.

I'm not sure how one would make the mental leap from
"I'll swap you this for that" to "I'll value your work
less and less until its worth nothing". If you feel
the swap is not worth it, then don't take their product
and then whine about the price[1].

This is all assuming that you are not misrepresenting the
FSF on purpose :-). "Not requiring payment in cash"
is different from "require payment in kind".

OTOH, if you are unhappy with the FSF terms of sale,
you are free not to "purchase" their software. They
do not hide it, they state their price upfront. If you
are not happy with the price (too high to bear) you
are free not to purchase their product.


> someone would come to my cabin in the woods and ask me to revise it for
> a few dollars.
>
> At that point I suggested that software is good (as someone pointed out,
> the Internet is a nice example) for society, but that all the good
> programmers are home doing the technical equivalent of crack "tinkering"
> with systems and in the end, Eureka!, the mouse works!
>

I can't really relate to that. I'm not even sure what that is
supposed to mean.

> My point: I am sure Mr. Harris could have solved protein folding by now
> and had as much fun doing it, if only he had been using Windows and a
> commercial Lisp.

Sure. But he may not want to, considering his "bill" for
doing so might not work i.e. If he writes FSF software his
"bill" is "send me the changes you make". If he solves
protein folding "send me the changes you make" might not
make any sense as a bill and he would have, in this case,
not been paid in the manner that he required.

Very few things are "for free, take one". FSF does indeed
have a price if you use their products, but you are free
to not purchase their products (they won't force you
to use it and then demand their pound of flesh).

notes:
[1] WRT Lispworks, I didn't take their product and then
complain about the price - I offered reasons for why
the price is too high for *me*. It's certainly correct
for *you* from the look of things. If their product
was priced inline with competing commercial products
I'm sure that I'd have no problem buying it.


goose,
Freedom is choosing your own payment methods :-)

Ken Tilton

unread,
Jul 13, 2006, 10:39:06 AM7/13/06
to

You are confused. Regrettable disparity in the wealth of nations is
being solved in another NG. You have said you would gladly pay for LW if
you could, so you have not been FSF-infected. I am talking about the
poor confused souls who say they do not like to pay for software and so
have been googling for hours trying to find a "free" solution, or get
their "free" Lisp to work, and are all the while bothering other busy
but confused people who gladly offer "free" support.

Now your personal estimate of how hard it is to configure and maintain a
Linux system is 120 seconds.....you may be an outlier. :)

>
>
>>Besides, you completely missed the point: gcc is free because someone
>>gave it away (and continues to develop and give away again) as a
>>deliberate political act with the intended effect I have already
>>bemoaned: infecting people with the idea that software has no value (or
>>that programmer time has no value).
>
>
> As someone else said, thats possibly Libel!

(a) You guys look so silly when you post these libel warnings, you
really should resist the temptation. :)

(b) You need to read the frickin manifesto again:

" Once GNU is written, everyone will be able to obtain good system
software free, just like air.(2)

This means much more than just saving everyone the price of a Unix
license. It means that much wasteful duplication of system programming
effort will be avoided."

PWUAHAHHAAHAHAH! PC Labs sounds like they really enjoyed installing Red
Hat. As for duplication, how many different Linux distros are there?
PWUUAHAHHAHAHAHAA!

" This effort can go instead into advancing the state of the art."

Right. And Emacs and Slime show no evidence that bitmapped displays have
made for very nice GUIs for the past 22 years.

"Complete system sources will be available to everyone. As a result, a
user who needs changes in the system will always be free to make them
himself, or hire any available programmer or company to make them for
him. Users will no longer be at the mercy of one programmer or company
which owns the sources and is in sole position to make changes."

No, they would have done a fine job, but the FSF drove them all out of
business. Great.

<snip Harvard inspiration>

"Finally, the overhead of considering who owns the system software and
what one is or is not entitled to do with it will be lifted.

"Arrangements to make people pay for using a program, including
licensing of copies, always incur a tremendous cost to society through
the cumbersome mechanisms necessary to figure out how much (that is,
which programs) a person must pay for. And only a police state can force
everyone to obey them."

That does not sound like the "checkout" page of any web site I know, tho
some /do/ make me want to give their developers a good flaming.

" Consider a space station..."

uh-oh...

"... where air must be manufactured at great cost: charging each
breather per liter of air may be fair, but wearing the metered gas mask
all day and all night is intolerable even if everyone can afford to pay
the air bill. And the TV cameras everywhere to see if you ever take the
mask off are outrageous. It's better to support the air plant with a
head tax and chuck the masks."

I guess the head tax is the hundreds of hours (or in your case, seconds)
spent by each head trying to get Linux to play a WAV file.

"Copying all or parts of a program is as natural to a programmer as
breathing, and as productive. It ought to be as free."

Ahem. You guys are libelling me by accusing me of libel!

> So, for me, each installation takes not more than a minute
> of my attention.

How long was the first install?

goose

unread,
Jul 13, 2006, 11:43:53 AM7/13/06
to
Ken Tilton wrote:
> goose wrote:
> > Ken Tilton wrote:
> >
> >>goose wrote:
> >>
> >>>Ken Tilton wrote:
> >>>
> >>><snipped>
> >>>
> >>>>Oh, yeah, this is the other thing you old dawgs cannot be trained off.
> >>>>Sorry, Charlie. $1425 is /nothing/ comapred to what other craftsmen are
> >>>>paying for their tools. You want be a serious photographer?
> >>>>Cabinetmaker? Guitarist? For $1425? PWUUAHAHAHAHAHAHAHHA!

<snipped>


> > Would you?
>
> You are confused. Regrettable disparity in the wealth of nations is
> being solved in another NG.

There is no confusion; that disparity is what so
neatly invalidates your point about $1425 being
"... /nothing/ compared to what other craftsmen are
paying ...".


> You have said you would gladly pay for LW if
> you could, so you have not been FSF-infected.

I've paid for dev tools before, doubtless I'll pay
for dev tools in the future.

> I am talking about the
> poor confused souls who say they do not like to pay for software and so
> have been googling for hours trying to find a "free" solution, or get
> their "free" Lisp to work, and are all the while bothering other busy
> but confused people who gladly offer "free" support.

Well, we all start off on the cheapest thing we can get away
with to learn. I've asked questions on the "free" lisps as
well; see my recent post about cmucl memory leakage/lack
of memory leakage. There is no problem with the free lisps
for me - in my book the price of a commerical lisp had so far
outweighed the /price/ that the free lisps were asking
(i.e. my time, my improvements, my feedback) that it was
a no brainer. Only a fool would consider a months pay
towards the purchase of the cheapest lisp system. I doubt
that *you* would give up a months pay for the cheapest
lisp system that will target only a single platform.

>
> Now your personal estimate of how hard it is to configure and maintain a
> Linux system is 120 seconds.....you may be an outlier. :)

No, just very, very lazy :-) I don't like repeating my work
(hence I'm a programmer) and so script everything. I believe
most *nix users do this as well (well, all the ones I know:-)
because its so simple to do.

AFAIK, windows systems tend to be the most time-consuming
to install/setup/administrate, sometimes with each system
requiring almost 30 minutes of human attention just on
install.

>
> >
> >
> >>Besides, you completely missed the point: gcc is free because someone
> >>gave it away (and continues to develop and give away again) as a
> >>deliberate political act with the intended effect I have already
> >>bemoaned: infecting people with the idea that software has no value (or
> >>that programmer time has no value).
> >
> >
> > As someone else said, thats possibly Libel!
>
> (a) You guys look so silly when you post these libel warnings, you
> really should resist the temptation. :)
>
> (b) You need to read the frickin manifesto again:
>
> " Once GNU is written, everyone will be able to obtain good system
> software free, just like air.(2)

Air has no value? Thats news to me ...

(read carefully; you just broke your own argument into pieces)


<snipped>

>
> Ahem. You guys are libelling me by accusing me of libel!

It is interesting to note that out of my entire
*reasoned* response to you, you pick *one* sentence
and devote your entire response to it while quitely
ignoring the issue that I raised:

The FSF software is being sold at a certain price;
if you are not happy with the price, then feel free
not to complete the transaction with them.

Why you are harping on about "FSF infection" is beyond
me; you are free not to do business with them just as
I am free not to do business with a commercial lisp
supplier. I tend to exercise my freedom in this regard.

I imagine you are bitter about confused souls who
want everything for free(gratis), but it would hurt
your argument about FSF infection less you'd stop
stereotyping all of us with the same brush as we
just want things for free(libre).

I, OTOH, am a little bitter than I can't afford
first world tools but you won't see me calling
the tools vendors names, nor will you see me
complain "Th3 bas7ards ar3 ov3rcharging" or
anything similar; I also won't deliberately
(I cannot tell in your case) misrepresent them
or their actions to further my argument.

You are smart, knowledgable and fairly articulate
(I note you weren't as quick to brainlessly flame
like the other poster) so try to understand that
sometimes the price for commercial software really
is too much (in currency and in lock-in), and not
that we are all just freeloaders.

I understand that the commercial systems might
be priced correctly as the vendors are sitting
in a country with strong currency and the $1425
dollars might be as low as they can go without
going out of business. The only way to go lower
would be to move to a country like mine where
cost of living is cheap and therefore they can
charge worldwide users less (there costs are
less).

If they don't move, well, then ... they certainly
will be out of business the minute we catch up,
because then we can charge less than them and still
maintain the same standard of living.

>
> > So, for me, each installation takes not more than a minute
> > of my attention.
>
> How long was the first install?
>

I've already told you, you snipped it out. The first
*customisation* of the installation media takes
a few minutes. Perhaps you are not familiar with slackware
and tagfiles? They allow you to specify (in textfiles)
what the installation program should install and what
should be left out.

FWIW, I don't even bother with the tagfiles anymore
and just maintain a list of packages in a textfile.
A bash script reads the textfile and installs the
packages. This script has worked since '96 or
thereabouts so I see no need to change now.

AIUI, there is no commercial OS that comes with
an installation that can be customised to be as
slick as slackware (like I described above) can
be made to be.

goose,

Leonid Slobodov

unread,
Jul 13, 2006, 2:18:12 PM7/13/06
to
Ken Tilton wrote:

There is another factor: learning.
For some people (like me) it's very important to be provided examples
along with theory(I need both), otherwise I just can't become
involved/interested/"passionate" enough.
Being provided the full sources of a large system maintained and
used by a large number of people is like a bless. It means I can
learn how people actually write idiomatic code in this language.
Other than that I think you are right insofar as there is no freedom
as in free beer.
I enjoy being able to contribute to free software projects
(I'm not saying everyone has to do it).It's just that I feel
free software encourages the openness of the mind, a quality I
value very much.

Now this is definitely OT :-)

Larry Elmore

unread,
Jul 13, 2006, 1:58:52 PM7/13/06
to
> Ken Tilton wrote:
>
>>> For a product which doesn't even approach the usefulness
>>> of the free offerings (see gcc) ....
>> If you think C is comparable to Lisp,

Umhh,,. for writing device drivers and other low-level software, it's
usually *superior*...

--Larry

Christopher C. Stacy

unread,
Jul 13, 2006, 1:21:08 PM7/13/06
to
Larry Elmore <ljel...@comcast.net> writes:

>> Ken Tilton wrote:
>>> If you think C is comparable to Lisp,
>
> Umhh,,. for writing device drivers and other low-level software, it's usually *superior*...

Yes, in my experience Lisp is generally superior to C when writing device drivers.
(However, you can't use plain ANSI Common Lisp for doing that.)

Leonid Slobodov

unread,
Jul 13, 2006, 3:28:51 PM7/13/06
to
Christopher C. Stacy wrote:

And how do you write device drivers in Lisp?
Do you use sbcl's vops for that or do you use some different mechanism?
Do you have available examples?

(just curious)

Darren New

unread,
Jul 13, 2006, 1:27:48 PM7/13/06
to
Christopher C. Stacy wrote:
> Yes, in my experience Lisp is generally superior to C when writing device drivers.
> (However, you can't use plain ANSI Common Lisp for doing that.)

That's OK. You can't use plain ANSI C for doing that either. :-)

--
Darren New / San Diego, CA, USA (PST)
This octopus isn't tasty. Too many
tentacles, not enough chops.

Frank Buss

unread,
Jul 13, 2006, 1:32:53 PM7/13/06
to
Darren New wrote:

> Christopher C. Stacy wrote:
>> Yes, in my experience Lisp is generally superior to C when writing device drivers.
>> (However, you can't use plain ANSI Common Lisp for doing that.)
>
> That's OK. You can't use plain ANSI C for doing that either. :-)

If you have to do some memory access, only (e.g. when polling memory in a
loop), you can do it in ANSI C, but not in Common Lisp.

--
Frank Buss, f...@frank-buss.de
http://www.frank-buss.de, http://www.it4-systems.de

Ken Tilton

unread,
Jul 13, 2006, 1:41:33 PM7/13/06
to

goose wrote:
> Ken Tilton wrote:
>
>>goose wrote:
>>
>>>Ken Tilton wrote:
>>>
>>>
>>>>goose wrote:
>>>>
>>>>
>>>>>Ken Tilton wrote:
>>>>>
>>>>><snipped>
>>>>>
>>>>>>Oh, yeah, this is the other thing you old dawgs cannot be trained off.
>>>>>>Sorry, Charlie. $1425 is /nothing/ comapred to what other craftsmen are
>>>>>>paying for their tools. You want be a serious photographer?
>>>>>>Cabinetmaker? Guitarist? For $1425? PWUUAHAHAHAHAHAHAHHA!
>
>
> <snipped>
>
>>>Would you?
>>
>>You are confused. Regrettable disparity in the wealth of nations is
>>being solved in another NG.
>
>
> There is no confusion; that disparity is what so
> neatly invalidates your point about $1425 being
> "... /nothing/ compared to what other craftsmen are
> paying ...".

I should have been more explicit about your confusion. :) The perfectly
good issue you raise applies to all sorts of things being affordable in
one country vs. another. ie, I am asking you to control for income.
Otherwise, yes, absolutely, your time is well spent/rewarded yelling and
screaming at compiler errors into the wee hours of the morning.

You keep trying to start a new, worthwhile, and important thread about
how great it is that RMS had the unintended* effect of letting
currency-rate challenged countries have a fine O/S to play with. This
would be a typical but regrettable usenet digression from the topic at
hand: people who could easily afford Win32 or OS X and LW or ACL pro and
who instead beat their heads against the wall trying to get free
software to work and continue working after some lib gets upgraded.

*I did not notice it in the manifesto, anyway.


>
>
>
>>You have said you would gladly pay for LW if
>>you could, so you have not been FSF-infected.
>
>
> I've paid for dev tools before, doubtless I'll pay
> for dev tools in the future.
>
>
>>I am talking about the
>>poor confused souls who say they do not like to pay for software and so
>>have been googling for hours trying to find a "free" solution, or get
>>their "free" Lisp to work, and are all the while bothering other busy
>>but confused people who gladly offer "free" support.
>
>
> Well, we all start off on the cheapest thing we can get away
> with to learn. I've asked questions on the "free" lisps as
> well; see my recent post about cmucl memory leakage/lack
> of memory leakage. There is no problem with the free lisps
> for me - in my book the price of a commerical lisp had so far
> outweighed the /price/ that the free lisps were asking
> (i.e. my time, my improvements, my feedback) that it was
> a no brainer. Only a fool would consider a months pay
> towards the purchase of the cheapest lisp system. I doubt
> that *you* would give up a months pay for the cheapest
> lisp system that will target only a single platform.

Careful. I paid $5k for a LaserWriter twenty years ago. To use for my
business. Remember, the context is "serious craftsperson".

>
>
>>Now your personal estimate of how hard it is to configure and maintain a
>>Linux system is 120 seconds.....you may be an outlier. :)
>
>
> No, just very, very lazy :-) I don't like repeating my work
> (hence I'm a programmer) and so script everything. I believe
> most *nix users do this as well (well, all the ones I know:-)
> because its so simple to do.
>
> AFAIK, windows systems tend to be the most time-consuming
> to install/setup/administrate, sometimes with each system
> requiring almost 30 minutes of human attention just on
> install.
>
>
>>>
>>>>Besides, you completely missed the point: gcc is free because someone
>>>>gave it away (and continues to develop and give away again) as a
>>>>deliberate political act with the intended effect I have already
>>>>bemoaned: infecting people with the idea that software has no value (or
>>>>that programmer time has no value).
>>>
>>>
>>>As someone else said, thats possibly Libel!
>>
>>(a) You guys look so silly when you post these libel warnings, you
>>really should resist the temptation. :)
>>
>>(b) You need to read the frickin manifesto again:
>>
>>" Once GNU is written, everyone will be able to obtain good system
>>software free, just like air.(2)
>
>
> Air has no value? Thats news to me ...

Ah, this is the other great way Usenet discussions unravel, people
starting to use words differently. Yes, air grows on trees, it has no
value. Until George W cuts down the last tree with his timber policy.
Hmm, I should buy a compressor and start stockpiling. People here in the
US already buy water over the counter.

>
> (read carefully; you just broke your own argument into pieces)

Please, you are good with Linux installs, please try to apply the same
intellectual rigor to usenet flamewars. :)


>
>
> <snipped>
>
>>Ahem. You guys are libelling me by accusing me of libel!
>
>
> It is interesting to note that out of my entire
> *reasoned* response to you, you pick *one* sentence
> and devote your entire response to it while quitely
> ignoring the issue that I raised:
>
> The FSF software is being sold at a certain price;
> if you are not happy with the price, then feel free
> not to complete the transaction with them.
>
> Why you are harping on about "FSF infection" is beyond

> me; you are free not to do business with them...

You know you have the FSF backed into a corner when they start saying
"you do not have to use it!".

Dude, all I did was bemoan the FSF giving people the idea that they
should not have to pay for software. We get that all the time from
people here on c.l.l: "I do not like to pay for tools." or "I need a
free library". The FSF obviously is free to do whatever they like, I am
just saying how unfortunate it is that so many have followed the Pied
Piper and ended up with such a great opportunity expense to themselves
and society.

You could yell "libel", if only I had not quoted RMS saying the same
thing: software should be free. the funny bit was where he said this
would avoid duplication of effort on systems programming. I gotta put
that on a bumper sticker.

> just as
> I am free not to do business with a commercial lisp
> supplier. I tend to exercise my freedom in this regard.
>
> I imagine you are bitter about confused souls who
> want everything for free(gratis), but it would hurt
> your argument about FSF infection less you'd stop
> stereotyping all of us with the same brush as we
> just want things for free(libre).

Hey, I exonerated you in the last article, and in this one I exonerated
everyone in a currency-challenged economy.

I snipped the rest where you continue on that other excellent,
undisputed thread about how Linux is great for poorer (in some currency
respect) countries. I also understand the other poster who said it is a
great learning tool. Absolutely. As is building your own computer. Hey,
is that a good analogy? Is it possible anymore to come up with a cheaper
PC-compatible system than Dell by buying parts separately and assembling
them? Even pricing labor at zero?

Anyway, let's hope that Lisp continues to grow and lets vendors come
down in price.

> I've already told you, you snipped it out. The first
> *customisation* of the installation media takes
> a few minutes.

Ah, the ambiguity of natural language strikes again. No, I mean the
first time you /ever/ encountered Linux. Or did someone pass this
install script down to you?


> AIUI, there is no commercial OS that comes with
> an installation that can be customised to be as
> slick as slackware (like I described above) can
> be made to be.

Both win32 and OS X (and AllegroCL) periodically ask me if I want to
update my system. I say, "Yes". So far so good.

Darren New

unread,
Jul 13, 2006, 2:05:24 PM7/13/06
to
Frank Buss wrote:
> If you have to do some memory access, only (e.g. when polling memory in a
> loop), you can do it in ANSI C, but not in Common Lisp.

The result of converting an integer to a pointer is undefined in ANSI C.
Branching to data is undefined in ANSI C. You're just taking advantage
of the fact that you happen to know what your compiler generates for
illegal code, and the fact that the compiler doesn't actually catch you
when you violate the semantics of the language.

I.e., you might be able to write an OS primarily with gcc, but you can't
do it in ANSI C.

Paolo Amoroso

unread,
Jul 13, 2006, 2:17:35 PM7/13/06
to
Leonid Slobodov <231...@thedoghousemail.com> writes:

> And how do you write device drivers in Lisp?

See:

http://en.wikipedia.org/wiki/Lisp_machines


Paolo
--
Why Lisp? http://wiki.alu.org/RtL%20Highlight%20Film
The Common Lisp Directory: http://www.cl-user.net

It is loading more messages.
0 new messages