[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Scheme-reports] ratification vote for R7RS-small

(Let's see if I can still post.)

Full name (required): Jussi Piitulainen

Location (optional): Helsinki, Finland

Affiliation (optional): University of Helsinki, but I speak for myself

Contact details (optional): -

Statement of interest (required since I did not register for the
previous events): I'm a user of Scheme since R3RS and consider Scheme
my native programming language. I've always read the reports and been
ready to switch implementations. My largest project is a suite of
programs to compute distributional similarity lists, which I rewrote
in Gambit-C (R5RS+FFI for Sqlite) from scratch a year ago (wish I had
written it in Scheme in the first place). I did an SRFI once. And a
tiny library that implements Python-style generators.

Vote (required): yes

Rationale (optional): It was frustrating how record types, exceptions,
and libraries of any sort first failed to make it into a report
between R4RS and R5RS and after, and when they did, the report was
otherwise different and the community was divided about it. ERR5RS
seemed interesting. The decision to start again from R5RS was
promising. I read a couple of R7RS drafts and found that my comments
were appreciated and considered to the extent that they made sense.

I find draft 9 an acceptable successor to R5RS in style and content,
and I believe it does what the working group set out to do. It's not
perfect but my remaining concerns are minor. I appreciate that certain
R6RS decisions were adopted.

The steering committee also asked about Chibi and its tests. I browsed
the tests. They seemed right to me. It's been many months since I used
Chibi itself. It seemed good then but not completely in synch with the
report at the time - the organization of the libraries kept changing.
I don't have adequate experience with the library mechanism.

I appreciate that a model interface for sequence procedures was worked
out, but the attempt to "round out" things for all sequence types
failed: a new sequence type was introduced without such procedures,
all these procedure may not be equally appropriate for all sequence
types - such rounding up was considered ages ago and rejected then -,
and the absence of mixed-type procedures is now awkward. Scheme fails
to express the underlying abstraction. The main harm of all these
procedures is that they take up space in the report.

I'm still not experiencing complete happiness about the handling of
internal definitions other than (define ...).

I, too, wish procedures retained their identity when they are passed
around. I don't remember writing code that depends on this, but it
would be in the spirit of Scheme.

I'm looking forward to the specification and implementation of further
libraries - major and minor - in the large working group and otherwise
outside the small language.

Scheme-reports mailing list