From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Amirouche Newsgroups: gmane.lisp.guile.user Subject: Re: miniAdapton Date: Sun, 30 Apr 2017 11:55:23 +0200 Message-ID: <3dac390f-5d54-ea11-8ff2-47b2c35d534c@hypermove.net> References: NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Trace: blaine.gmane.org 1493546193 22370 195.159.176.226 (30 Apr 2017 09:56:33 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sun, 30 Apr 2017 09:56:33 +0000 (UTC) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 To: guile-user@gnu.org Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Sun Apr 30 11:56:28 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 1d4lae-0005iL-Lk for guile-user@m.gmane.org; Sun, 30 Apr 2017 11:56:28 +0200 Original-Received: from localhost ([::1]:43981 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d4lak-0004Nf-FC for guile-user@m.gmane.org; Sun, 30 Apr 2017 05:56:34 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:41580) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d4laM-0004NX-J0 for guile-user@gnu.org; Sun, 30 Apr 2017 05:56:11 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1d4laJ-0002qt-Hc for guile-user@gnu.org; Sun, 30 Apr 2017 05:56:10 -0400 Original-Received: from relay4-d.mail.gandi.net ([2001:4b98:c:538::196]:43677) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1d4laJ-0002qn-C5 for guile-user@gnu.org; Sun, 30 Apr 2017 05:56:07 -0400 Original-Received: from mfilter1-d.gandi.net (mfilter1-d.gandi.net [217.70.178.130]) by relay4-d.mail.gandi.net (Postfix) with ESMTP id 55BDB1720B8 for ; Sun, 30 Apr 2017 11:56:05 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at mfilter1-d.gandi.net Original-Received: from relay4-d.mail.gandi.net ([IPv6:::ffff:217.70.183.196]) by mfilter1-d.gandi.net (mfilter1-d.gandi.net [::ffff:10.0.15.180]) (amavisd-new, port 10024) with ESMTP id gIbp8iK8yqnF for ; Sun, 30 Apr 2017 11:54:47 +0200 (CEST) X-Originating-IP: 82.239.61.147 Original-Received: from [192.168.0.7] (aul93-4-82-239-61-147.fbx.proxad.net [82.239.61.147]) (Authenticated sender: amirouche@hypermove.net) by relay4-d.mail.gandi.net (Postfix) with ESMTPSA id E12BE1720A4 for ; Sun, 30 Apr 2017 11:54:46 +0200 (CEST) In-Reply-To: X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4b98:c:538::196 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:13653 Archived-At: Héllo! Le 29/04/2017 à 12:40, Catonano a écrit : > 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=bmpu1N2yf-k&feature=youtu.be > > here's an article > http://scheme2016.snow-fort.org/static/schemeworkshop2016-miniadapton.pdf > > Thanks in advance Well, this requires a more time that I want to give to it to understand it correctly. 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 = 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 = 3 scheme@(guile-user)> (avar-set! a 10) scheme@(guile-user)> (avar-get c) $3 = 12 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? [1] https://www.postgresql.org/docs/current/static/sql-creatematerializedview.html