Andreas Rottmann | 7 Oct 2005 12:38
Picon
Picon
Gravatar

Porting SUnet to s48; network API convergance

The following message is a courtesy copy of an article
that has been posted to gmane.lisp.scheme.scsh.devel as well.

Hi!

Since I'd like to be able to run SUnet on Scheme48, I have wondered
what the best way would be to achive this; here are excerpts of my
exchange with Michael Sperber:

,----
| Andreas Rottmann <ar <at> visotech.at> writes:
|
| > [...] These ideas and patches are all somewhat related to the effort
| > of porting scsh to Scheme48. I'm also interested in details on that,
| > since I want to have SUnet available for Scheme48 and that would
| > mean porting some scsh libraries/infrastructure. Could you please
| > point me to information on the porting process, so I can get
| > involved?
| 
| That's a handful of questions.  I'm not sure I can answer all of them
| well:
| 
| The general plan with scsh and Scheme 48 is to clean up the scsh APIs
| one by one.  The network API is high on that list, and indeed running
| SUnet on Scheme 48 is among our plans.  For that to happen, what we
| need to do is overhaul the scsh networking API---to clean it up, and
| to fit better with Scheme 48 conventions.  First and foremost, that
| means turning the enumerations into finite types, I think.  The best
| way to do it is probably to make the changes on the scsh trunk, and,
| when the code is ready there, merge it over.  (We also have plans to
(Continue reading)

Andreas Bernauer | 8 Oct 2005 12:27
Picon
Picon

(usagi-users 03520) Re: Porting SUnet to s48; network API convergance

On 10/7/05, Andreas Rottmann <a.rottmann <at> gmx.at> wrote:
> Since I'd like to be able to run SUnet on Scheme48, I have wondered
> what the best way would be to achive this; here are excerpts of my
> exchange with Michael Sperber:
>
> Since currently these
> constants are hardcoded to match the constants used in the
> corresponding C API, my idea was to have a platform-specific mapping
> procedure, e.g. PROTOCOL-FAMILY-≥OS-INTEGER, that maps the finite type
> instances to their C constant counterparts.
>
> Of course these changes will break backwards compatibility, hence code
> using the network API must be adapted or the old interface
> retained.

I'm currently not so much into SUnet and scsh, but what's the point in
porting SUnet from scsh to Scheme48 and at the same time breaking
backwards compatibility? I am not sure if I understand you correctly:
when people want to add something to SUnet, will they have to write
one version for scsh and one version for Scheme48?

Cheers,

Andreas.


Gmane