Subject: Re: For McCarthy's sake !
From: rpw3@rpw3.org (Rob Warnock)
Date: Fri, 09 Mar 2007 03:30:05 -0600
Newsgroups: comp.lang.lisp
Message-ID: <772dnT0qZOeAtGzYnZ2dnUVZ_sWdnZ2d@speakeasy.net>
Tim X  <timx@nospam.dev.null> wrote:
+---------------
| For me, the most difficult part of starting to use CL was actually
| finding the functions which you knew had to exist, but couldn't find
| because you didn't know what they were called.
+---------------

I think we've all experienced at least some of that. For example,
consider the ubiquitous Unix "basename" program & library function.
I knew about PATHNAME-NAME a long time ago (relatively speaking),
but it doesn't do that job if you have periods in the filename,
of course, you have to take the outputs from both PATHNAME-NAME
and PATHNAME-TYPE and then munge them back together [which might
not always even work if the original filename had *mutliple* periods
in it], so I'd been coding up my own idiosyncratic BASENAME routine
over & over again. I only *very* recently found out that CL also
has FILE-NAMESTRING, which does pretty much "the right thing"
as a "basename" replacement!

I now also know that DIRECTORY-NAMESTRING exists, and is
sometimes what I really need instead of PATHNAME-DIRECTORY.

+---------------
| Once I know the name, I often look it up in the hyperspec as
| this provides really useful and concise information. 
+---------------

The CLHS's "Permuted Symbol Index" [bottom half of
<http://www.lisp.org/HyperSpec/FrontMatter/Symbol-Index.html>]
can really come in handy here. If you've got even *part* of the
name right, you can usually find the right thing in the permuted
index.


-Rob

-----
Rob Warnock			<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607