From: Peter Seibel
Subject: Two new Practical Common Lisp chapters ...
Date: 
Message-ID: <m3r7mkklau.fsf@javamonkey.com>
... on FOO, yet another HTML generation language. (FOO is an inane
recursive arcronym (retronym actually) "FOO Outputs Output"). Chapters
30 and 31 on:

  <http://www.gigamonkeys.com/book/>

And check out the "jacket" blurb from Xach of #lisp on that page!

As always, I'm interested in any feedback folks have. This time, I'd
be particularly interested to hear from any of teh the dozens of folks
who have implemented their own HTML generators.

-Peter

-- 
Peter Seibel                                      ·····@javamonkey.com

         Lisp is the red pill. -- John Fraser, comp.lang.lisp

From: ivant
Subject: Re: Two new Practical Common Lisp chapters ...
Date: 
Message-ID: <1101303462.912150.58520@c13g2000cwb.googlegroups.com>
Great stuff as always!

I've only read the chapter about the interpreter, and found it very
interesting.  There are some things that can be improved, though:

* Variables *pretty* and *html-pretty-printer* are not defined.

* Function cons-form-p is parameterized for later.  Why not just
redefine it, when later comes?

* The chapter starts great, up to and including the "Character
escaping" part.  Then, you have to read the rest as a whole before
you can play with the code.  If you can restructure it, so it has
more of the "PRACTICAL: A Simple Database" chapter feel, it'll be
great.  That one is probably the best introductory chapter I've
ever read!

* Move the two HTML generation chapters before they are used.  Again,
the problem I see is that if a reader goes through the book
sequentially, she has to read several chapters before she can try
the code.

Keep up the great work.

Cheers,
Ivan

P.S.  And I was looking forward to the "delivering a lisp application"
part. Will miss this :(
From: Russell Snow
Subject: Re: Two new Practical Common Lisp chapters ...
Date: 
Message-ID: <1I2pd.2$817.1@dfw-service2.ext.ray.com>
This is a multi-part message in MIME format.
--------------000002030507060207010601
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit

Peter Seibel wrote:

> As always, I'm interested in any feedback folks have. This time, I'd
> be particularly interested to hear from any of teh the dozens of folks
> who have implemented their own HTML generators.
> 
> -Peter
> 

I have been reading the online version to learn LISP. Some of the code 
is simply beautiful. That could be because of LISP, but then I can write 
Fortran in any language.

The examples are just right for me. I am a software engineer of 15 years 
working in C++, C, Java, and Fortran.

I found one error in the examples, but couldn't figure out where to send 
it. Should I post it here?

Good work!

Russell

--------------000002030507060207010601
Content-Type: text/x-vcard; charset=utf-8;
 name="russell.snow.vcf"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="russell.snow.vcf"

begin:vcard
fn:Russell Snow
n:Snow;Russell
org:Raytheon;Software
adr:;;3350 E Hemisphere Loop;Tucson;AZ;85706-5012;USA
···························@raytheon.com
title:Sr. Software Engineer I with Honors
tel;work:(520) 545-9597
tel;fax:(520) 545-9725
tel;pager:(520) 489-9861
x-mozilla-html:TRUE
url:http://rlug.tuc.us.ray.com
version:2.1
end:vcard


--------------000002030507060207010601--
From: Peter Seibel
Subject: Re: Two new Practical Common Lisp chapters ...
Date: 
Message-ID: <m3r7mjgpgk.fsf@javamonkey.com>
Russell Snow <············@raytheon.com> writes:

> Peter Seibel wrote:
>
>> As always, I'm interested in any feedback folks have. This time, I'd
>> be particularly interested to hear from any of teh the dozens of folks
>> who have implemented their own HTML generators.
>> -Peter
>> 
>
> I have been reading the online version to learn LISP. Some of the
> code is simply beautiful. That could be because of LISP, but then I
> can write Fortran in any language.
>
> The examples are just right for me. I am a software engineer of 15
> years working in C++, C, Java, and Fortran.
>
> I found one error in the examples, but couldn't figure out where to
> send it. Should I post it here?

You can send any feedback to ····@gigamonkeys.com.

-Peter

-- 
Peter Seibel                                      ·····@javamonkey.com

         Lisp is the red pill. -- John Fraser, comp.lang.lisp
From: Tayssir John Gabbour
Subject: Re: Two new Practical Common Lisp chapters ...
Date: 
Message-ID: <866764be.0411250239.7919c6d9@posting.google.com>
Peter Seibel <·····@javamonkey.com> wrote in message news:<··············@javamonkey.com>...
> ... on FOO, yet another HTML generation language. (FOO is an inane
> recursive arcronym (retronym actually) "FOO Outputs Output"). Chapters
> 30 and 31 on:
> 
>   <http://www.gigamonkeys.com/book/>
> 
> And check out the "jacket" blurb from Xach of #lisp on that page!

Out of curiosity, does Apress or you actually care if there are
preorders? I can imagine it's not as important as I might think.

Incidentally, some people had luck putting the word "eXtreme" in their
title and putting little pictures of people inside. Maybe you should
consider such things. In fact, I'm sure there's a professional
wrestler who could hype it a little for you.

MfG,
Tayssir
From: Peter Seibel
Subject: Re: Two new Practical Common Lisp chapters ...
Date: 
Message-ID: <m3d5y1g9bc.fsf@javamonkey.com>
···········@yahoo.com (Tayssir John Gabbour) writes:

> Peter Seibel <·····@javamonkey.com> wrote in message news:<··············@javamonkey.com>...
>> ... on FOO, yet another HTML generation language. (FOO is an inane
>> recursive arcronym (retronym actually) "FOO Outputs Output"). Chapters
>> 30 and 31 on:
>> 
>>   <http://www.gigamonkeys.com/book/>
>> 
>> And check out the "jacket" blurb from Xach of #lisp on that page!
>
> Out of curiosity, does Apress or you actually care if there are
> preorders? I can imagine it's not as important as I might think.

I don't know. Though here's one thing--Apress is probably going to
want me to take the web site down when the book is finally published
(or at least not have the whole book up there). There's part of me
that believes I'll actually sell more copies if I can leave it up.[1]
To the extent that a lot of copies have been preordered, it will be
easier for me to make that case to the folks at Apress.

-Peter

[1] Mostly I believe this because I think there are lots of folks who
come to Lisp with just enough interest to want to check it out without
actually spending any money or much time--if those folks can read my
book for free on line, some of them will decide Lisp is actually cool
enough to be worth the investment in a book rather than having to read
500 pages on line.

-- 
Peter Seibel                                      ·····@javamonkey.com

         Lisp is the red pill. -- John Fraser, comp.lang.lisp
From: Christophe Turle
Subject: Re: Two new Practical Common Lisp chapters ...
Date: 
Message-ID: <41a66cc2$0$2538$626a14ce@news.free.fr>
Just a general comment on the design of domain specific languages :

You use the 'code-walker' style for your HTML generator, there's an other 
mean :

1- html expressions returns a "DOM" like tree.
html, p , ... are all macros.

(html (p "foo")) => <html ...>

2- Writing html code from this tree using a specific pretty-printer dispatch 
table.

(print-as-html-code *) => <html><p>foo</p></html>


I used this with sava (java s-expr) and it has some advantages :

- no code-walker.
- you can use standard macros.
- you have all the power of the pretty-printer.
- you may use the tree for other purposes : data analysis, ... You may even 
re-dump the code in s-expr forms ! It is useful when you have built your 
tree interactively piece by piece and you want to dump your work for further 
use.

I'm sure it has disadvantages too ;-)


My point was : Can you put pros and cons of the different DSL designs. There 
are others lisp->html, sure their choices are different too.


ps: beware sava installation is not user friendly so, i'm currently working 
on asdf.


-- 
___________________________________________________________
Christophe Turle.
sava preview http://perso.wanadoo.fr/turle/lisp/sava.html
(format nil ···@~a.~a" 'c.turle 'wanadoo 'fr)
From: Jan Rychter
Subject: Re: Two new Practical Common Lisp chapters ...
Date: 
Message-ID: <m2llcoey3z.fsf@tnuctip.rychter.com>
>>>>> "Peter" == Peter Seibel <·····@javamonkey.com> writes:
[...]
 Peter> I don't know. Though here's one thing--Apress is probably going
 Peter> to want me to take the web site down when the book is finally
 Peter> published (or at least not have the whole book up
 Peter> there). There's part of me that believes I'll actually sell more
 Peter> copies if I can leave it up.
[...]

For what it's worth, I definitely agree. I have personally purchased a
number of books after having accessed them online. I still prefer to
have a paper copy for serious use, even though I find the convenience of
an online searchable text very nice.

--J.
From: Jeff
Subject: Re: Two new Practical Common Lisp chapters ...
Date: 
Message-ID: <jeWpd.151770$HA.31880@attbi_s01>
Jan Rychter wrote:

> >>>>> "Peter" == Peter Seibel <·····@javamonkey.com> writes:
> [...]
>  Peter> I don't know. Though here's one thing--Apress is probably
> going  Peter> to want me to take the web site down when the book is
> finally  Peter> published (or at least not have the whole book up
>  Peter> there). There's part of me that believes I'll actually sell
> more  Peter> copies if I can leave it up.
> [...]
> 
> For what it's worth, I definitely agree. I have personally purchased a
> number of books after having accessed them online. I still prefer to
> have a paper copy for serious use, even though I find the convenience
> of an online searchable text very nice.

Agreed. And, even though I might be in a lesser group, many times I
will purchase various books/software, just to encourage the
author/developer. I have already pre-ordered your book, Peter. Keep up
the good work. I look forward to the "black belt" chapters on LOOP and
FORMAT most of all.

Jeff M.

-- 
(a (href "http://www.retrobyte.org/"))
(a (href ···············@gmail.com"))
From: Tobias C. Rittweiler
Subject: Re: Two new Practical Common Lisp chapters ...
Date: 
Message-ID: <9d9f3bb3.0411270339.1e1000f3@posting.google.com>
Peter Seibel <·····@javamonkey.com> wrote...
>
> ···········@yahoo.com (Tayssir John Gabbour) writes:
> 
> > Out of curiosity, does Apress or you actually care if there are
> > preorders? I can imagine it's not as important as I might think.
> 
> I don't know. Though here's one thing--Apress is probably going to
> want me to take the web site down when the book is finally published
> (or at least not have the whole book up there). There's part of me
> that believes I'll actually sell more copies if I can leave it up.[1]

I determine whether or not I buy a book according to two rules: Either
reading some chunks out of the book in question convinces me that this
book is worth its bucks, or recommendations by recensions do so ---
whereby rule #1 is mostly still responsible for the final decision making
but good recensions often highly influence the decision making process. 
And the closer the recensor stands to me, or the higher I think of the 
recensor, the more I get influenced, so that sometimes I order a book
after having read the booklet and the TOC only.

Being able to preread a book is crucial, and all good physical bookshops
offer places to seat down and comb through books. Why shouldn't the same
be valid for the Internet?
		       

> [1] Mostly I believe this because I think there are lots of folks who
> come to Lisp with just enough interest to want to check it out without
> actually spending any money or much time--if those folks can read my
> book for free on line, some of them will decide Lisp is actually cool
> enough to be worth the investment in a book rather than having to read
> 500 pages on line.

Especially as c.l.l (and other public Internet media) are the main
marketing pool for your book, it's hell more probably that people will
actually look at your book when being pointed to it via a web address
than when they're told that an answer of their particular problem is
covered in some book they would have to order at first before getting at
their answer.

"Dudes, is Lisp suited for things like Unit Testing?"

"Yawn. An implementation is even covered in a book about the basics: <addr> 
 Things like that are really so easy and Practical <in> Common Lisp.
 No idea what's the fuss all about." :)


The worries of your publisher cannot be totally eliminated, because
there indeed is some risk that people would actually buy the book but
seeing it's readable online for free brings them off from ordering. Yet
this doesn't make the decision right at all, since people who want that
book, will still order it whether or not it exists online for free. 
And even the number of those who will not order it because of that, is
outnumbered by the number of people who will be attracted to the book
by its online version in the first place, methinks.

Besides this economical reason to let the online version remain, there
comes an additional moral side: The more people comming to your book
will make you and your publisher happy, the answers people will find 
within the book will make them and us happy, because after all people 
will understand Lisp better. [1]


> To the extent that a lot of copies have been preordered, it will be
> easier for me to make that case to the folks at Apress.

Done so.
 


[1] Equally, not having written the book in the first place would have 
    been a moral sin just as well. ;)

--tcr.
From: Gareth McCaughan
Subject: Re: Two new Practical Common Lisp chapters ...
Date: 
Message-ID: <878y8knwql.fsf@g.mccaughan.ntlworld.com>
Tobias Rittweiler wrote:

> Being able to preread a book is crucial, and all good physical bookshops
> offer places to seat down and comb through books. Why shouldn't the same
> be valid for the Internet?

Because too many publishers don't really believe that what they
do adds enough value to the book, as compared with what you'd get
on the web, to justify paying the price for it. Which makes one
wonder, why do they go on doing it? :-)

-- 
Gareth McCaughan
.sig under construc
From: Emre Sevinc
Subject: Re: Two new Practical Common Lisp chapters ...
Date: 
Message-ID: <87llcnjv73.fsf@bilgi.edu.tr>
Peter Seibel <·····@javamonkey.com> writes:

> ···········@yahoo.com (Tayssir John Gabbour) writes:
>
>> Peter Seibel <·····@javamonkey.com> wrote in message news:<··············@javamonkey.com>...
>>> ... on FOO, yet another HTML generation language. (FOO is an inane
>>> recursive arcronym (retronym actually) "FOO Outputs Output"). Chapters
>>> 30 and 31 on:
>>> 
>>>   <http://www.gigamonkeys.com/book/>
>>> 
>>> And check out the "jacket" blurb from Xach of #lisp on that page!
>>
>> Out of curiosity, does Apress or you actually care if there are
>> preorders? I can imagine it's not as important as I might think.
>
> I don't know. Though here's one thing--Apress is probably going to
> want me to take the web site down when the book is finally published
> (or at least not have the whole book up there). There's part of me
> that believes I'll actually sell more copies if I can leave it up.[1]
> To the extent that a lot of copies have been preordered, it will be
> easier for me to make that case to the folks at Apress.


Just to let you know that your book has been preordered
for Istanbul Bilgi University (in which I'm working as an Internet
developer). I'll also try to preorder it for Bogazici University.

Here is the order status:

http://library.bilgi.edu.tr/search/i1590592395/i1590592395/-2%2C-1%2C0%2CE/frameset&FF=i1590592395&1%2C1%2C



-- 
Emre Sevinc

eMBA Software Developer         Actively engaged in:
http:www.bilgi.edu.tr           http://ileriseviye.org
http://www.bilgi.edu.tr         http://fazlamesai.net
Cognitive Science Student       http://cazci.com
http://www.cogsci.boun.edu.tr