Date: Tue, 6 Feb 2001 20:27:37 -0600 (CST)
From: Chris Lattner <sabre@nondot.org>
To: Vikram S. Adve <vadve@cs.uiuc.edu>
Subject: Type notation debate...

This is the way that I am currently planning on implementing types:

Primitive Types:        
type ::= void|bool|sbyte|ubyte|short|ushort|int|uint|long|ulong

Method:
typelist ::= typelisth | /*empty*/
typelisth ::= type | typelisth ',' type
type ::= type (typelist)

Arrays (without and with size):
type ::= '[' type ']' | '[' INT ',' type ']'

Pointer:
type ::= type '*'

Structure:
type ::= '{' typelist '}'

Packed:
type ::= '<' INT ',' type '>'

Simple examples:

[[ %4, int ]]   - array of (array of 4 (int))
[ { int, int } ] - Array of structure
[ < %4, int > ] - Array of 128 bit SIMD packets
int (int, [[int, %4]])  - Method taking a 2d array and int, returning int


Okay before you comment, please look at:

http://www.research.att.com/~bs/devXinterview.html

Search for "In another interview, you defined the C declarator syntax as
an experiment that failed. However, this syntactic construct has been
around for 27 years and perhaps more; why do you consider it problematic
(except for its cumbersome syntax)?" and read that response for me.  :)

Now with this syntax, his example would be represented as:

[ %10, bool (int, int) * ] *

vs 

bool (*(*)[10])(int, int)

in C.

Basically, my argument for this type construction system is that it is
VERY simple to use and understand (although it IS different than C, it is
very simple and straightforward, which C is NOT).  In fact, I would assert
that most programmers TODAY do not understand pointers to member
functions, and have to look up an example when they have to write them.

In my opinion, it is critically important to have clear and concise type
specifications, because types are going to be all over the programs.

Let me know your thoughts on this.  :)

-Chris

