Talk About Network



Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Compilers > Re: silly quest...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 26 of 27 Topic 2351 of 2421
Post > Topic >>

Re: silly question: prefix vs postfix ops

by Tony Finch <dot@[EMAIL PROTECTED] > Mar 4, 2008 at 02:20 PM

MattR <rosing@[EMAIL PROTECTED]
> wrote:
>
>Anyway, why are there prefix operators that could just as well be
>postfix? Why is it !a and not a!, or *a and not a* ? I can understand
>the increment and decrement operators, and the & op but expressions like
>*a[i] would be a lot clearer if it were a[i]*, just read the operators
>from right to left. Is it a case of, well, it's always been done this
way?

Many people have observed that C's syntax could be hugely improved by
replacing prefix * with a postfix dereference operator like Pascal's.
Ben Werther & Damian Conway probably wrote up the most comprehensive
description of an improved syntax for C++. See
http://www.csse.monash.edu.au/~damian/papers/HTML/ModestProposal.html

To answer why C has such bad syntax for pointers, you should look at BCPL.
It had two indirection operators, !ptr and ptr!offset. The former turned
into C's *ptr and the latter split into ptr[offset] and ptr->offset.
The precedence and associativity of ! make most expressions quite
convenient. The only C-like awkward case is dealing with pointers to
functions, as in (ptr!offset)(args). C evolved while it was being used
which made it too hard to replace the residual BCPLisms with something
more usable with C's more typeful features.

Tony.
--
f.a.n.finch  <dot@[EMAIL PROTECTED]
>  http://dotat.at/
FISHER: NORTHWEST 5 TO 7, PERHAPS GALE 8 LATER. ROUGH OR VERY ROUGH.
WINTRY
SHOWERS. MODERATE OR GOOD.




 27 Posts in Topic:
silly question: prefix vs postfix ops
MattR <rosing@[EMAIL P  2008-03-03 10:37:52 
Re: silly question: prefix vs postfix ops
Claudio Saavedra <csaa  2008-03-03 16:24:45 
Re: silly question: prefix vs postfix ops
"Dmitry A. Kazakov&q  2008-03-03 20:42:38 
Re: silly question: prefix vs postfix ops
Alex Colvin <alexc@[EM  2008-03-05 22:02:05 
Re: silly question: prefix vs postfix ops
Hans-Peter Diettrich <  2008-03-06 14:28:53 
Re: silly question: prefix vs postfix ops
glen herrmannsfeldt <g  2008-03-03 12:12:28 
Re: silly question: prefix vs postfix ops
Hans Aberg <haberg_200  2008-03-03 22:10:19 
Re: silly question: prefix vs postfix ops
Marco van de Voort <ma  2008-03-03 22:23:48 
Re: silly question: prefix vs postfix ops
glen herrmannsfeldt <g  2008-03-04 03:06:11 
Re: call by name, was silly question: prefix vs postfix ops
wclodius@[EMAIL PROTECTED  2008-03-04 20:25:54 
Re: call by name, was silly question: prefix vs postfix ops
wclodius@[EMAIL PROTECTED  2008-03-05 20:06:38 
Re: call by name, was silly question: prefix vs postfix ops
anw@[EMAIL PROTECTED] (A  2008-03-07 01:18:09 
Re: call by name, was silly question: prefix vs postfix ops
torbenm@[EMAIL PROTECTED]  2008-03-07 09:32:16 
Re: call by name, was silly question: prefix vs postfix ops
Hans-Peter Diettrich <  2008-03-09 20:16:38 
Re: call by name, was silly question: prefix vs postfix ops
glen herrmannsfeldt <g  2008-03-10 14:39:21 
Re: localized keywords, was call by name
Hans-Peter Diettrich <  2008-03-14 04:27:31 
Re: localized keywords, was call by name
"Dmitry A. Kazakov&q  2008-03-14 18:53:32 
Re: localized languages, was call by name
"Aleksey Demakov&quo  2008-03-14 12:26:59 
Re: localized languages, was call by name
torbenm@[EMAIL PROTECTED]  2008-03-14 09:41:57 
Re: localized languages, was call by name
"Derek M. Jones"  2008-03-15 11:51:55 
Re: localized languages, was call by name
Alex Colvin <alexc@[EM  2008-03-14 22:22:20 
Re: call by name, was silly question: prefix vs postfix ops
Carl Barron <cbarron41  2008-03-10 19:37:16 
Re: algol60 history, was call by name
glen herrmannsfeldt <g  2008-03-14 00:16:14 
Re: call by name, was silly question: prefix vs postfix ops
wclodius@[EMAIL PROTECTED  2008-03-10 19:50:56 
Re: algol, was call by name
Louis Krupp <lkrupp@[E  2008-03-15 17:38:17 
Re: silly question: prefix vs postfix ops
Tony Finch <dot@[EMAIL  2008-03-04 14:20:02 
Re: silly question: prefix vs postfix ops
Ralph Boland <rpboland  2008-03-04 17:59:29 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Fri May 16 21:26:14 CDT 2008.