This page is part of the web mail archives of SRFI 58 from before July 7th, 2015. The new archives for SRFI 58 contain all messages, not just those from before July 7th, 2015.
On Fri, 31 Dec 2004 campbell@xxxxxxxxxxxxxxxxxxxxxxxxxxx wrote: >On Fri, 31 Dec 2004, bear wrote: >> Lispy lists are brilliant: open-paren, elements, >> close paren. I would love to be able to have >> something that simple and elegant for arrays. >> openbracket, elements, closebracket. >> >> The need to specify types for uniform arrays and >> ranks for arrays with multiple dimensions one of >> which is possibly zero complicates it, but the >> simplest case, IMO, should be as simple to express >> and as fundamental in syntax as a list. >What makes arrays so fundamental in syntax as to require a notation as >succinct as lists? Lisp syntax is not defined in terms of arrays: the >literal array syntax is only a minor convenience. There are many more >lists than arrays in a portion of code, typically. And that, I believe, is a problem. Lispers often use lists where arrays would be more appropriate in terms of efficient access to data. They do this, in part, because lisp handles lists so gracefully in its syntax and language primitives that it's easy to overlook arrays. This comes about, I think, because in most lisps, list syntax is natural and array syntax is comparatively cumbersome. I would even support arrays-as-syntax replacing lists-as-syntax in several cases. A 'switch' statement using an array to hold the cond clauses rather than a list would actually be easier to compile into an efficient binary-search or index-jump table, in addition to clarifying the surface syntax. Bear