Syntax & Records (was: Re: COPL, the Tandem, PLITS and JAVA (WAS Re: Eppur si sugat))
Chris Pressey
cpressey@REDACTED
Tue Jun 3 02:15:31 CEST 2003
On Fri, 30 May 2003 18:43:49 +0200
"Vlad Dumitrescu" <vlad_dumitrescu@REDACTED> wrote:
> Just one wild thought in the opposite direction from the one discussed
> before: Why not let records be as they are (or almost) and instead
> introduce pattern matching on dicts (and maybe other similar data
> structures)?
>
> As an afterthought, I think Joe's structs did work that way, and the
> idea might not be original.
That's sort of how I'd approach structs:
- you effectively can't get rid of records, so leave them be
- make all functions in module dict, BIFs (for performance only)
- add a shorthand syntax for dicts
- add pattern matching for dicts
- add guards (etc) to dicts
Then you basically have structs, plus any code that currently uses dicts
also gets a performance boost, without any extra changes.
But then you might well ask, "Why can't I pattern match on property
lists etc"? Then you may ask "Why aren't patterns a first-class type?"
Then you may ask "Isn't this an awful lot of work to slightly improve a
language which is already very nice?" :)
-Chris
More information about the erlang-questions
mailing list