Re: srfe records in reworked match

2010-05-03 Thread stefan
On Monday 03 May 2010 03:51:27 pm Ludovic Courtès wrote: > > I started with the suggested code, > > Which one? :-) > The newest without a record implementation. /Stefan

Re: srfe records in reworked match

2010-05-03 Thread Ludovic Courtès
Howdy! Stefan writes: > No problem, let's not stress and have fun instead. :-) >> Stefan writes: >> Ok, I put the files in a tar directory and published it at http:///c-lambda.se/match.tar.gz >> >> Cool, thanks! >> >> So you started from Shinn’s latest match.scm, backported recor

Re: srfe records in reworked match

2010-05-03 Thread Stefan
On May 3, 2010, at 2:38 PM, Ludovic Courtès wrote: > Hi Stefan, > > Sorry for the delay. No problem, let's not stress and have fun instead. > Stefan writes: > >>> Ok, I put the files in a tar directory and published it at >>> http:///c-lambda.se/match.tar.gz > > Cool, thanks! > > So you st

Re: srfe records in reworked match

2010-05-03 Thread Ludovic Courtès
Hi Stefan, Sorry for the delay. Stefan writes: >> Ok, I put the files in a tar directory and published it at >> http:///c-lambda.se/match.tar.gz Cool, thanks! So you started from Shinn’s latest match.scm, backported record-related stuff from its match-cond-expand.scm, and added Guile-specific

srfe records in reworked match

2010-04-28 Thread Stefan
> Ok, I put the files in a tar directory and published it at > http:///c-lambda.se/match.tar.gz > > Should we make a more thorough test suite? > > /Stefan > > On Apr 28, 2010, at 10:40 AM, Ludovic Courtès wrote: > >> Hi Stefan, >> >> Thanks for the good news! :-) >> >> stefan writes: >> >>

Re: srfe records in reworked match

2010-04-28 Thread Ludovic Courtès
Hi Stefan, Thanks for the good news! :-) stefan writes: > How to proceed? Can you post your code somewhere? (Could be by email.) If it’s based on Alex Shinn’s match, can you show the diff? It would also be nice to get in touch with him to have him integrate your changes, possibly using ‘(c

Re: srfe records in reworked match

2010-04-23 Thread stefan
Ok, I have validated it as you suggested. I also added the missing match-define. Not all features of the old match construct is implemented yet though. They are 1. The boxing, which I don't know what the meaning is. 2. The special record construction 3. Error handling features. How to proceed?

Re: srfe records in reworked match

2010-04-23 Thread Ludovic Courtès
Hi, stefan writes: > On Wednesday 21 April 2010 10:40:29 am Ludovic Courtès wrote: >> As noted in Shinn’s match-cond-expand.scm, this record matching form is >> not ideal: >> >> ;; Annoying unhygienic record matching. Record patterns look like >> ;; ($ record fields...) >> ;; where the

Re: srfe records in reworked match

2010-04-23 Thread stefan
On Wednesday 21 April 2010 10:40:29 am Ludovic Courtès wrote: > As noted in Shinn’s match-cond-expand.scm, this record matching form is > not ideal: > > ;; Annoying unhygienic record matching. Record patterns look like > ;; ($ record fields...) > ;; where the record name simply assumes th

Re: srfe records in reworked match

2010-04-22 Thread stefan
ok, It took much longer time to make this work then the logic deserved acording to your wishes, mainly because I have not wrapped my head correctly around define-syntax and friends. There is a discussion going on right know on accessors et all. I hope that you can detail the conclusion of that

Re: srfe records in reworked match

2010-04-22 Thread Andy Wingo
On Thu 22 Apr 2010 14:57, l...@gnu.org (Ludovic Courtès) writes: > Andy Wingo writes: > >> This does not affect SRFI-9 accessors at all; they can still be >> integrable. > > Not unless ‘record-accessor’ is bypassed. I'm not talking about implementing srfi-9 record accessors in terms of guile rec

Re: srfe records in reworked match

2010-04-22 Thread Ludovic Courtès
Andy Wingo writes: > This does not affect SRFI-9 accessors at all; they can still be > integrable. Not unless ‘record-accessor’ is bypassed. Thanks, Ludo’.

Re: srfe records in reworked match

2010-04-22 Thread Andy Wingo
Hi, On Thu 22 Apr 2010 14:27, l...@gnu.org (Ludovic Courtès) writes: >> There would be no penalty making Guile's records interoperable with >> SRFI-9 records. > > Currently Guile’s SRFI-9 accessors are “integratable” whereas record > accessors aren’t. IOW, until Guile has an inliner, there’d be

Re: srfe records in reworked match

2010-04-22 Thread Ludovic Courtès
Andy Wingo writes: > On Wed 21 Apr 2010 10:40, l...@gnu.org (Ludovic Courtès) writes: > >> FWIW I’d really prefer if it could work with SRFI-9 (which is purely >> syntactic, so there’s no run-time record type descriptor) rather than >> with Guile’s records (as above). > > There is a run-time rtd,

Re: srfe records in reworked match

2010-04-22 Thread Andy Wingo
On Wed 21 Apr 2010 10:40, l...@gnu.org (Ludovic Courtès) writes: > FWIW I’d really prefer if it could work with SRFI-9 (which is purely > syntactic, so there’s no run-time record type descriptor) rather than > with Guile’s records (as above). There is a run-time rtd, of sorts; it is the struct-vt

Re: srfe records in reworked match

2010-04-21 Thread Ludovic Courtès
Hi, [Keeping the list CC’d.] Stefan writes: > Question? should we make it lean and just allow sfri-9 or perhaps > allow for both styles of records? Actually, record matching in Wright’s match assumes users follow a simple naming convention for the type predicate (only for the type predicate in

Re: srfe records in reworked match

2010-04-21 Thread Ludovic Courtès
Hello Stefan, stefan writes: > I have started to code in some record recognition into the match construct Excellent! :-) Are you hacking Wright’s match as currently in Guile or Alex Shinn’s rewrite from ? > I need first to make sure that I grok the intention of

srfe records in reworked match

2010-04-20 Thread stefan
Ok, I have started to code in some record recognition into the match construct I need first to make sure that I grok the intention of the syntax! Now, one can do ... * (define rtf (make-record-type "n" '(x y z))) * (define make-n (record-constructor rtf)) * (define v(make-n 1 2 3