guile-user
[Top][All Lists]
Advanced

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

Re: Bytestructures: a "type system" for bytevectors


From: Taylan Ulrich Bayırlı/Kammer
Subject: Re: Bytestructures: a "type system" for bytevectors
Date: Tue, 21 Jun 2016 00:05:43 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Andy Wingo <address@hidden> writes:

> On Sun 30 Aug 2015 18:32, address@hidden (Taylan Ulrich "Bayırlı/Kammer") 
> writes:
>
>> https://github.com/taylanub/scheme-bytestructures
>>
>> (I don't endorse GitHub, but I gave in after Gitorious went down.)
>>
>> I had started working on this project around two years ago but it had a
>> pretty strange and complex API, an unreadable README, high overhead for
>> something you might want to use in high-performance settings (byte
>> crunching), and a bit too hung up on being standards compliant.
>>
>> I resumed working on it around a week ago, and solved all these issues!
>>
>> (I still do my best to keep R7RS compliance, but Guile is my prime
>> *real* target.)
>>
>> So what is it?
>>
>> === Structured access to bytevector contents ===
>
> I really want something like this BTW :) I was thinking that we can do
> this on a proper low level, applying type tags to bytevectors.  I want
> something like http://luajit.org/ext_ffi.html for Guile, and data access
> is part of it.
>
> Andy

Hi Andy :-)

Have you also seen the thread titled "Bytestructures, FFI"?  (Maybe I
should have dug up this thread and replied to it instead of creating
that one.)

In light of that new feature that lets one easily wrap C functions from
Scheme, the missing features relative to Lua's FFI that I can spot are:

- parsing of C syntax

- automatic handling of strings

Is there more?

The second should be relatively easy.  The first is something I think
would be *great* and always had in mind, but it scares me. :-) Any tips
on how to begin to implement it welcome.  Would I have to write a C
parser in Scheme, or can we cheat somehow?

Taylan



reply via email to

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