From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Catonano Newsgroups: gmane.lisp.guile.user Subject: Re: miniAdapton Date: Mon, 1 May 2017 11:07:31 +0200 Message-ID: References: <3dac390f-5d54-ea11-8ff2-47b2c35d534c@hypermove.net> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1493629677 20368 195.159.176.226 (1 May 2017 09:07:57 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 1 May 2017 09:07:57 +0000 (UTC) Cc: guile-user@gnu.org To: Amirouche Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Mon May 01 11:07:52 2017 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d57J9-0005E3-KB for guile-user@m.gmane.org; Mon, 01 May 2017 11:07:51 +0200 Original-Received: from localhost ([::1]:53412 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d57JF-0000V7-8V for guile-user@m.gmane.org; Mon, 01 May 2017 05:07:57 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43747) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d57It-0000Ur-56 for guile-user@gnu.org; Mon, 01 May 2017 05:07:36 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1d57Ir-0006Hq-LR for guile-user@gnu.org; Mon, 01 May 2017 05:07:35 -0400 Original-Received: from mail-wm0-x236.google.com ([2a00:1450:400c:c09::236]:33478) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1d57Ir-0006Hf-B5 for guile-user@gnu.org; Mon, 01 May 2017 05:07:33 -0400 Original-Received: by mail-wm0-x236.google.com with SMTP id n198so7314453wmg.0 for ; Mon, 01 May 2017 02:07:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=c8HDkluSu5tgISCS7RGjD2NbtLlLZGzrW1FKkLxSqVM=; b=hVVkqsUcVfvBC/MZqf15TacwFk8HF37mEgAgR48VVdzu+4chR0rS5ukw82ONYqoB1x 1EYzD5GktZqYLg4GCGrJg3rv1gjuAAW++bJN4yHf6jD/RKOMCGy5s1wfS6ke6yD6y0KH lUzFeeJ15nAh0vaspJs3vKnvVouXaw6QKHAG7YOnT7Ptc8aaSkINLDACnmyf4xQ7CCKP 9sIXq1Q4NF5Ha3BKel+51FUS2wNC867h91lrT66SSVpCnIzwsh8NR/cH2mhH6N7y4z9v Q+EyDpkLc5fXACqpHZxDl2PB3IQG2Ij4W3JJoJiobrDzHx/syI0BAOxpFW6dd4v9IKog yfUw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=c8HDkluSu5tgISCS7RGjD2NbtLlLZGzrW1FKkLxSqVM=; b=DfcR36vXff7p5b9LLHgyvDFuWV3DOJdYmNoD+L1J3xVJLVIRmH7SsgzVKEaM/M56Jz zRpg4A534uInp31BTILPwQjksd02cZGV5zi0GCRdyCX2q4AcJsG/cbcieLNr+ttlPdmc jS6XyuHOjchyFk4Nn4rQRtMb9VcdREwkEzD8n8AB9Xxerj5LHXp6gppfv+ira7Ai0Nfv XK2PAm5TfJEfj1T+VaUHaXHUE2RzSqS5IHC3BqweASppMSQn8QedAr1hfhS7eEDHz366 K5FU7JF82I0ovT8n3P9GNKbwtflg1rfLXqy4KiHCts9L2+34AM6sEDinoO8VYKTB8u3H enZQ== X-Gm-Message-State: AN3rC/4DivmeylMOEK6rNDG1IUwfQgAg0d8fx//Wi25w7JtDo0kUaTjM M8E/+nbXLWxIEPggH35FjUFgRYCUww== X-Received: by 10.80.134.208 with SMTP id 16mr19407207edu.67.1493629652008; Mon, 01 May 2017 02:07:32 -0700 (PDT) Original-Received: by 10.80.138.202 with HTTP; Mon, 1 May 2017 02:07:31 -0700 (PDT) In-Reply-To: <3dac390f-5d54-ea11-8ff2-47b2c35d534c@hypermove.net> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::236 X-Content-Filtered-By: Mailman/MimeDel 2.1.21 X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Original-Sender: "guile-user" Xref: news.gmane.org gmane.lisp.guile.user:13658 Archived-At: 2017-04-30 11:55 GMT+02:00 Amirouche : > H=C3=A9llo! > > > Le 29/04/2017 =C3=A0 12:40, Catonano a =C3=A9crit : > >> I'd like to run miniAdapton in Guile >> >> here's the repo >> https://github.com/fisherdj/miniAdapton >> >> Now: how do I get it running in Guile ? >> >> What are those .sld files ? >> >> What about thos "define-library" and "library" forms ? Are those a r7rs >> thing ? >> >> For reference: >> >> here's an amazing talk given by the awesome William Byrd >> https://www.youtube.com/watch?v=3Dbmpu1N2yf-k&feature=3Dyoutu.be >> >> here's an article >> http://scheme2016.snow-fort.org/static/schemeworkshop2016-miniadapton.pd= f >> >> Thanks in advance >> > > Well, this requires a more time that I want to give to it to understand > it correctly. > It seems to me that you already understood a lot ! > > FYI the following works: > > ~/src/guile/miniAdapton$ guile -L . > GNU Guile 2.2.0 > Copyright (C) 1995-2017 Free Software Foundation, Inc. > > Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'. > This program is free software, and you are welcome to redistribute it > under certain conditions; type `,show c' for details. > > Enter `,help' for help. > scheme@(guile-user)> (use-modules (miniadapton)) > scheme@(guile-user)> (define-avar a 1) > scheme@(guile-user)> (avar-get a) > $1 =3D 1 > scheme@(guile-user)> (define-avar b 2) > scheme@(guile-user)> (define-avar c (+ (avar-get a) (avar-get b))) > scheme@(guile-user)> (avar-get c) > $2 =3D 3 > scheme@(guile-user)> (avar-set! a 10) > scheme@(guile-user)> (avar-get c) > $3 =3D 12 > Wonderful. So those "deine-library" and "library" forms are a vanilla feature of Guile ! > In theory this kind of framework could be put to good use, to implement > the equivalent of PostgreSQL Materialized view [1] that are refreshed > automatically. > > How do you want to use it? > I want to keep a database AND a datastructure in ram in synch. I don't want to read a view, for that. I used to read the db when I was using your grf3, but now I'd lie to minimize the traffic to/from the db. > > [1] https://www.postgresql.org/docs/current/static/sql-createmat > erializedview.html > > Thanks for your help !