Re: Compilation Was: Is DEFCONSTANT broken?
- From: Paul Donnelly <paul-donnelly@xxxxxxxxxxxxx>
- Date: Thu, 25 Jun 2009 16:48:48 -0500
pjb@xxxxxxxxxxxxxxxxx (Pascal J. Bourguignon) writes:
Duane Rettig <duane@xxxxxxxxx> writes:
Actually, quite the opposite. A loop is more complex than straight-
line code; it has a branch instruction within it, which is well-
understood to create pipeline stalls, unless the hardware has the
added complexity itself to duplicate effort in order to perform branch
prediction. No, the simplest code is the fully-unrolled loop which
executes no branches, but which simply performs the required
instructions. Is it necessarily optimal? No, because code size does
factor into the mix, and so the fact that loops are only unrolled
partially is due to tradeoffs between code complexity and instruction
cache size.
We fight complexity with abstractions. Which is mostly inventing new
levels of source code generating the existing lower level of lisp, VOP
or binary. If adding an abstraction didn't reduce the complexity we
wouldn't do it, we'd keep programming in assembler.
I think you two are working from two different senses of the word
“complexity”. Duane's definition in this context seems to be that
complex code is that which requires more legwork — a more involved
series of steps — for the computer to execute. Obviously interpreting
code from text or in-memory lists takes more work than running machine
code or byte code, so by this definition the process of running a
program has been simplified immensely by compilation.
.
- Follow-Ups:
- Re: Compilation Was: Is DEFCONSTANT broken?
- From: Pascal J. Bourguignon
- Re: Compilation Was: Is DEFCONSTANT broken?
- References:
- Is DEFCONSTANT broken?
- From: Ron Garret
- Re: Is DEFCONSTANT broken?
- From: Ron Garret
- Re: Is DEFCONSTANT broken?
- From: Kaz Kylheku
- Re: Is DEFCONSTANT broken?
- From: Kaz Kylheku
- Re: Is DEFCONSTANT broken?
- From: Ron Garret
- Re: Is DEFCONSTANT broken?
- From: Scott Burson
- Re: Is DEFCONSTANT broken?
- From: Duane Rettig
- Re: Is DEFCONSTANT broken?
- From: Scott Burson
- Re: Is DEFCONSTANT broken?
- From: Duane Rettig
- Re: Is DEFCONSTANT broken?
- From: Scott Burson
- Re: Is DEFCONSTANT broken?
- From: Duane Rettig
- Re: Is DEFCONSTANT broken?
- From: Scott Burson
- Re: Is DEFCONSTANT broken?
- From: Duane Rettig
- Compilation Was: Is DEFCONSTANT broken?
- From: Pascal J. Bourguignon
- Re: Compilation Was: Is DEFCONSTANT broken?
- From: Duane Rettig
- Re: Compilation Was: Is DEFCONSTANT broken?
- From: Pascal J. Bourguignon
- Is DEFCONSTANT broken?
- Prev by Date: Re: Compilation Was: Is DEFCONSTANT broken?
- Next by Date: Re: THE to function as DECLARE?
- Previous by thread: Re: Compilation Was: Is DEFCONSTANT broken?
- Next by thread: Re: Compilation Was: Is DEFCONSTANT broken?
- Index(es):
Relevant Pages
|