[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: (declare (type fixnum ---)) considered etc.
- Subject: Re: (declare (type fixnum ---)) considered etc.
- From: shebs%utah-orion@utah-cs.arpa (Stanley Shebs)
- Date: Thu, 24 Jul 86 11:47:47 MDT
- Apparently-to: common-lisp@su-ai.arpa
- Distribution:
- Expires:
- Followup-to:
- Keywords:
- Newsgroups: fa.common-lisp
- Organization: University of Utah CS Dept
- References: <8607241621.AA03430@hplsny>
- Reply-to: shebs@utah-orion.UUCP (Stanley Shebs)
- Sender:
- Summary:
In article <8607241621.AA03430@hplsny> snyder%hplsny@hplabs.HP.COM (Alan Snyder) writes:
>I think the PL/I experience shows
>that if you force people to declare the number of bits of
>precision they want, in most cases they will find out what number
>produces the best results on their current machine and use that,
>thus making their programs non-portable in terms of efficiency.
This is a red herring. Almost everything in CL is going to vary
in efficiency between implementations. Consider FUNCALL - some impls
do it almost as well as a direct call, while others cons up a list
of arguments and feed to APPLY. This has a direct bearing on the
efficiency of using things like MEMBER's keyword arguments. Consider
generic sequence functions, whose allowed variation is notorious;
DELETE is not even required to be destructive! Consider arrays, which
can be specialized in a dozen ways, or not at all.
As a language, Common Lisp can promise consistent efficiency or consistent
behavior - and I prefer the latter. It might be possible to promise both in
a high-level language, but nobody's succeeded yet...
stan