Re: ASDF-newbie: How to determine whether ASDF is *already* installed on my ISP?
- From: Thomas Stenhaug <thomas.stenhaug@xxxxxxxxx>
- Date: Sat, 07 Mar 2009 23:52:39 +0100
[Pascal J. Bourguignon]
| [...] man THE_COMAND and read carefully the page mage
| of the command.
[Robert Maas]
| I already did read those fucking-extraverbose man pages several times,
| each time spending a half hour or hour or even two hours [...]
You might be better off reading them less carefully. I'm often helped
by cheap-and-cheerful approaches, like
$ diff --version | head -n 1
diff (GNU diffutils) 2.8.1
$ diff --help | grep white
-b --ignore-space-change Ignore changes in the amount of white space.
-w --ignore-all-space Ignore all white space.
at least for the first pass.
I think it's reasonable to think of `find' as the general Unix user
interface for operating on the filesystem-graph, and as such worth
spending a little time learning.
find --help
yields a dense overview, at least with a recent GNU findutils. Also,
the top 4 Google results for "find tutorial" are tutorials for `find'.
You'll find that most commands yield useful output when you pass --help.
| Ok, now it's sitting at:
| Manual page diff(1) line 195/219 (END)
| and when I press space to continue off the end it just beeps at me.
| Do I need to press control-C to abort the 'man' program on Ubuntu
Nowadays it's reasonable to assume that the default pager is `less'
(instead of `more'). `man' takes care of rendering the page, and punts
to `less' for paging. Press `q' to quit, press `h' to see a help-page,
press `/' to search forward for a regex-match, press `g' to jump to the
first line. Piping long output to `less' for paging long outputs from
grep, locate etc. is useful.
There's a recent-Linux-distribution survival-kit for you; --help,
option, grep, find, locate, man and less.
| How come the line-number given by 'diff' isn't the same as one more
| than the number of C-N commands needed to get there? Is it because
| the stupid version of EMACS on Ubuntu counts wrapped lines as MORE
| THAN ONE LINE [...]
That sounds highly unlikely. Besides, you can probably get the
display behaviour you want by putting "(setq selective-display-ellipses
t)" in your .emacs.
Since you're already in Emacs, it's convenient to do `M-x diff RET'
insteading of dropping to a shell. Other useful commands to avoid
dropping to a shell in Emacs are `dired', `locate', `grep', `find',
`find-grep' and `man'. They invoke the corresponpinding Linux commands
for you, and provides helpful behaviour for operating on the output.
For example, `RET' on a line in a diff-buffer will take you to the
corresponding line in the source file, `RET' on a line in a grep buffer
will take you to the corresponding location in the source file etc.
| I don't understand why, on Ubuntu where asdf already is on system
| disk, I need to provide my own version in addition. Why can't I
| just use the system-supplied version?
Why can't you? (load "/path/to/asdf.lisp") ?
| I'm guessing asdf:oos means Object-Oriented Services, but
| so-far the Google search isn't turning up the definition of the
| abbreviation.
CL-USER> (load #p"/home/thomas/lib/cl/asdf.lisp")
T
CL-USER> (documentation 'asdf:oos 'function)
"Short for _operate on system_ and an alias for the `operate` function.
Operate does three things:
1. It creates an instance of `operation-class` using any keyword parameters
as initargs.
2. It finds the asdf-system specified by `system` (possibly loading
it from disk).
3. It then calls `traverse` with the operation and system as arguments
The traverse operation is wrapped in `with-compilation-unit` and error
handling code. If a `version` argument is supplied, then operate also
ensures that the system found satisfies it using the `version-satisfies`
method."
An alternative to ASDF is Sean Ross' Mudballs <http://mudballs.com/>
| Many years ago there were job openings for people to do this kind of
| work, for the purpose of developing a huge database of "world
| knowledge" for use by a computer system that understood the deep
| meaning of natural language.
Today the "semantic web" is all the rage. Or, maybe it was last week.
<http://en.wikipedia.org/wiki/Semantic_Web>
| IMO s-expressions are optimal for specifying strictly-nested
| structures, whereas SGML is optimal for turning orthogonal modes on
| and off in a non-nested way, the old "tag soup" methodology.
Related topic at <http://www.cliki.net/HTML-from-sexpr>. Marking up
with sexprs offers paren-matching instead of tag-balancing, structural
editing with familiar Emacs commands, less verbosity, easy manipulation
by means of CL, easy to spit out whatever-format from.
| I wonder how MicroSoft Word fhandles it [...]
It's "Microsoft", I believe.
| [about ASDF dependency-detection/resolving]
<http://www.cliki.net/asdf-dependency-grovel> is useful, and
<http://common-lisp.net/project/xcvb/> is in the works.
ASDF/ASDF-INSTALL works just fine for downloading, installing, compiling
and loading an extensive set of libraries, though.
| Suppose that file "a" in system FOO changes; if you load system BAR,
| file "a" will be recompiled; but file "b" will not! If file "b" uses a
| macro from file "a", you will load the old version of that macro from
| FASLs, and things will break. Ow.
| Does this mean ASDF is really crappy in this respect?
This has bitten me often enough that I have written tools for clearing
relevant fasls. On the other hand, I've become better at getting my
macros right quickly. :)
--
Thomas
.
- References:
- Re: ASDF-newbie: How to determine whether ASDF is *already* installed on my ISP?
- From: Robert Maas, http://tinyurl.com/uh3t
- Re: ASDF-newbie: How to determine whether ASDF is *already* installed on my ISP?
- Prev by Date: Re: Is unwind-protect required here?
- Next by Date: Re: Is unwind-protect required here?
- Previous by thread: Re: ASDF-newbie: How to determine whether ASDF is *already* installed on my ISP?
- Next by thread: Re: ASDF-newbie: How to determine whether ASDF is *already* installed on my ISP?
- Index(es):