[R6RS] Implicit naming for record procedures

Marc Feeley feeley
Mon Apr 25 09:36:22 EDT 2005


On Apr 25, 2005, at 9:09 AM, Michael Sperber wrote:

>> I think that explicit naming should be supported also, but even this
>> is not strictly necessary to reach your objective since you could
>> also add comments, i.e.
>>
>> (define-type person ; make-person person?
>>    birthday          ; person-birthday person-birthday-set!
>>    sex               ; person-sex person-sex-set!
>> )
>
> The point of implicit naming isn't just "grep"---it's also that
> all-too-often the names that I want aren't the ones implicit naming
> would choose.
>

It is just too tedious to type record definitions with all the
accessor names, when the use of the record is local and there
are many record definitions.  My experience is that the programming
overhead of defining such locally used records (even when implicit
names are used) is high enough that people are tempted to (and do)
use lists, pairs and vectors instead.  The programming overhead has
to be kept as low as possible if we want to promote a good
programming style.

If there is a standard implicit naming convention I'm convinced the
vast majority of users will use it instead of explicit names.
I believe explicit naming will be viewed as "bad style" (i.e. not
adhering to convention) and that users will shy away from using
explicit names in their code and from inventing their own implicit
naming convention.  But I think the record definition form should
allow both implicit and explicit names, so everyone can be
happy, right?

Marc



More information about the R6RS mailing list