Hi mark, A lot of the stuff is pretty neat. I'm particularly interested in changes regarding immutability, being a functional programming nut :) I also greatly appreciate the work you have already done in improving guile's numerics.
Like most people, I'll just pick a few to comment on Mark H Weaver <m...@netris.org> writes: > * Improve the implementations of map, for-each, et al. List processing is obviously very important, ideally when the native compiler comes in we'll get some work in to reduce the number of intermediate data structures built. It's been on my todo list, but I don't know if/when I'd get around to it. > * catch and raise in terms of R7RS/R6RS exceptions/conditions I'll look forward to that :) > * Improve the hash function, and allow GOOPS objects et al to > declare their own custom hash function. Andy says that there are better hash functions on master. It doesn't IIRC cover all cases, but it's a start. > * Improve the PRNG and its initializer :) > * Chunked encoding for web client I had been putting this off, but I will do it. > * Parser combinators a.l.a. Haskell parcomb works fine for most cases. I don't think this is necessary to implement, unless you want to... > * Efficient purely-functional data structures, > like Chris Okasaki's Edison, for Guile I've been working on this in my own time, on an as-needed basis. See https://github.com/ijp/pfds/ . SamTH on #scheme recently pointed me to a bunch of ones implemented for racket: ralists/fectors/etc. that I will get around to adding. > * Monad library? I have a bunch of these already, mostly mimicking existing haskell libraries. Generic operators are a bit of a pain, since you can't do a generic return using GOOPS. This is motivating my experiments with higher order modules. > * Improve error messages and debugging Always welcome. Thanks for sharing. -- Ian Price "Programming is like pinball. The reward for doing it well is the opportunity to do it again" - from "The Wizardy Compiled"