unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
* Pre-release guile-r7rs 0.1.0 and guile-wiredtiger 0.8.0
@ 2019-05-03 14:30 amirouche
  2019-05-09 14:46 ` Amirouche Boubekki
  0 siblings, 1 reply; 2+ messages in thread
From: amirouche @ 2019-05-03 14:30 UTC (permalink / raw)
  To: guile-user gnu

Hello!


I am working toward releasing guile-r7rs 0.1.0 and guile-wiredtiger 
0.8.0.
They are both available in the my guix channel. That you can use as 
follow:

   $ cat ~/.config/guix/channels.scm
   (cons (channel
           (name 'amz3)
           (url "https://git.sr.ht/~amz3/guix-amz3-channel"))
         %default-channels)

Then:

   $ guix pull
   ...

guile-r7rs rely on a guile-pfds but the current guile-pfds available in
guix has a bug.

Anyway, to install everything you need to do the following:

   $ guix package -i guile-pfds@0.0.0 guile-r7rs@0.0.0 
guile-wiredtiger@0.0.0

It might ask you to remove any previous installation of one the those
packages.

The work-in-progress documentation of guile-r7rs is available at:

   https://git.sr.ht/~amz3/guile-r7rs/tree/master/doc

The doc is mostly scrapped from r6rs, r7rs and srfis.

Here is the list of available modules:

   scheme/assume.scm
   scheme/base.scm
   scheme/bitwise.scm
   scheme/box.scm
   scheme/bytevector.scm
   scheme/case-lambda.scm
   scheme/char.scm
   scheme/charset.scm
   scheme/comparator.scm
   scheme/complex.scm
   scheme/cxr.scm
   scheme/eval.scm
   scheme/file.scm
   scheme/generator.scm
   scheme/hash-table.scm
   scheme/inexact.scm
   scheme/lazy.scm
   scheme/list.scm
   scheme/load.scm
   scheme/mapping/hash.scm
   scheme/mapping.scm
   scheme/process-context.scm
   scheme/r5rs.scm
   scheme/read.scm
   scheme/repl.scm
   scheme/set.scm
   scheme/sort.scm
   scheme/stream.scm
   scheme/time.scm
   scheme/write.scm

You can look in the tracker to know what is missing:

   https://todo.sr.ht/~amz3/guile-r7rs

The source hut badge says the tests are failing, it is because
I did not fix the build specification since I added autotools.

guile-wiredtiger is gearing toward 0.8.0:

- raw bytevector key and values are supported, multiple columns
   are still supported but it is recommend to rely on pack and
   unpack procedures defined in (wiredtiger pack) see below.

- fix bug related to session-rollback which was bound to wiredtiger
   transaction prepare.

- move wiredtiger/wiredtiger.scm to wiredtiger.scm which means to
   access the procedures you need to import (wiredtiger) instead of
   (wiredtiger wiredtiger)

- add `wiredtiger/pack.scm` which is based on foundationdb packing 
algorithm.
   The packing algorithm support more scheme types including bigint,
   symbols, single and double precision floats (inexact). This is still
   a work in progress. Do expect breaking changes as I might move away 
from
   foundationdb compatibility to better blend in Scheme. Review welcome:

     
https://framagit.org/a-guile-mind/guile-wiredtiger/blob/master/wiredtiger/pack.scm

- add `wiredtier/okvs.scm` which is a partial implementation of srfi 
167,
   that you can have look at here:

     https://srfi.schemers.org/srfi-167/

- add `wiredtiger/nstore.scm` which is an implementation of srfi 168, 
that
   you can have look at here:

     https://srfi.schemers.org/srfi-168/

Regarding srfi 168, the conversation is still happening. So chime in, 
ask
questions, debate and help create the greatest database abstraction with
Scheme.

I already envision extensions to srfi-168 to support Xz-ordering [0] 
that is
state-of-the-art space filling curve that allows to index 
spatio-temporal
data. That will be done in a backward compatible way.



Happy hacking!


[0] http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.73.4894



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Pre-release guile-r7rs 0.1.0 and guile-wiredtiger 0.8.0
  2019-05-03 14:30 Pre-release guile-r7rs 0.1.0 and guile-wiredtiger 0.8.0 amirouche
@ 2019-05-09 14:46 ` Amirouche Boubekki
  0 siblings, 0 replies; 2+ messages in thread
From: Amirouche Boubekki @ 2019-05-09 14:46 UTC (permalink / raw)
  To: amirouche; +Cc: guile-user gnu

Le ven. 3 mai 2019 à 16:30, <amirouche@hyper.dev> a écrit :

> guile-wiredtiger is gearing toward 0.8.0:
>

I have a bug related to wiredtiger I can not fix. I am left without clues
how to solve the issue. Do not use that library until 0.8.0 is released.


> I already envision extensions to srfi-168 to support Xz-ordering [0]
> that is
> state-of-the-art space filling curve that allows to index
> spatio-temporal
> data. That will be done in a backward compatible way.
>

Actually, it is not possible to implement space filling curves on top
srfi-168.
But it will work on top of srfi-167. And the specification is ready for
this.


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-05-09 14:46 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-03 14:30 Pre-release guile-r7rs 0.1.0 and guile-wiredtiger 0.8.0 amirouche
2019-05-09 14:46 ` Amirouche Boubekki

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).