guile-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] Split r6rs-ports.c according to module boundaries


From: Andreas Rottmann
Subject: Re: [PATCH] Split r6rs-ports.c according to module boundaries
Date: Sat, 30 Nov 2013 15:54:55 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

Mark H Weaver <address@hidden> writes:

> Hi Andreas,
>
> This new patch has a very serious problem, which was not obvious at
> first glance.  We've made some significant improvements to r6rs-ports.c
> since you first introduced this patch, and this new patch would
> effectively undo all of them.  It's a good thing I took the time to
> check.  Please be more careful.
>  
Thanks for taking a look and sorry for being sloppy; I'd have expected
merge conflicts in this case when updating the patch; for some reason
topgit updated the patch without any conflicts.  Since you raise
concerns whether this patch really makes sense on a fundamental level,
let's figure out this question before going into specifics.

> I confess I'm not entirely clear on why this module is being split.  It
> seems to me that this whole thing is the R6RS ports API.  Can you help
> me understand the reason for this split?
>
I've split it to match the two Scheme modules that already existed:
(ice-9 binary-ports) and (rnrs io ports). The latter does a private
import (via '@@') of '%make-transcoded-port' defined in the former in
the implementation of 'transcoded-port'.

I'd like to get rid of that invocation of '@@', but perhaps splitting
the C code is misguided, and it would be better to instead move the
implementation of 'transcoded-port' to (ice-9 binary-ports), along with
the rest of the transcoder API, i.e. place the implementation of all
these identifiers in (ice-9 binary-ports):

  eol-style native-eol-style error-handling-mode make-transcoder
  transcoder-codec transcoder-eol-style transcoder-error-handling-mode
  native-transcoder latin-1-codec utf-8-codec utf-16-codec

Thoughts?
-- 
Andreas Rottmann -- <http://rotty.xx.vu/>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]