From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Mikael Djurfeldt" Newsgroups: gmane.lisp.guile.devel Subject: Re: SLIB Date: Sat, 11 Aug 2007 19:00:08 +0200 Message-ID: <66e540fe0708111000v22662b54sc62a9b297bf6308e@mail.gmail.com> References: <878x8icngm.fsf@chbouib.org> Reply-To: mikael@djurfeldt.com NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_13550_23752760.1186851608147" X-Trace: sea.gmane.org 1186851618 24769 80.91.229.12 (11 Aug 2007 17:00:18 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Sat, 11 Aug 2007 17:00:18 +0000 (UTC) To: "=?ISO-8859-1?Q?Ludovic_Court=E8s?=" , guile-devel@gnu.org Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Sat Aug 11 19:00:15 2007 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1IJuJy-0006yw-Dh for guile-devel@m.gmane.org; Sat, 11 Aug 2007 19:00:14 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IJuJx-0007KY-Uh for guile-devel@m.gmane.org; Sat, 11 Aug 2007 13:00:13 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1IJuJv-0007KG-S9 for guile-devel@gnu.org; Sat, 11 Aug 2007 13:00:11 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1IJuJu-0007K3-S5 for guile-devel@gnu.org; Sat, 11 Aug 2007 13:00:11 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IJuJu-0007Jt-JU for guile-devel@gnu.org; Sat, 11 Aug 2007 13:00:10 -0400 Original-Received: from rv-out-0910.google.com ([209.85.198.189]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1IJuJt-0003Gx-VB for guile-devel@gnu.org; Sat, 11 Aug 2007 13:00:10 -0400 Original-Received: by rv-out-0910.google.com with SMTP id c27so805963rvf for ; Sat, 11 Aug 2007 10:00:08 -0700 (PDT) DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:reply-to:sender:to:subject:cc:in-reply-to:mime-version:content-type:references:x-google-sender-auth; b=GXPJ7GA2brTFTHnsaxnHlyTWXNUrnAasSt4YK1ymKK57BTgnps08Es3Q+PRos6ICwFS+0JVjwa0SIxjZQTq+sKBUub2FqjhbKnDorB/L/EQJBe77aHqTwvfktpjUvQzHTUlA5no8GjGzyNvpy4374U5f3kyyZTuZVRS1XbkWsB4= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:reply-to:sender:to:subject:cc:in-reply-to:mime-version:content-type:references:x-google-sender-auth; b=a/DTRyjU1wPJ8zC7eJGxX8vZ3ZzDpqsZGslgKAj95rMoqE+vf8iEktx9VWaH4jrCJoe4PT5yS9XGqvFUgu1LtPhH4Z2b5QhsxOVaYjPwsB+SW2QP2gPrM0h5M76RODEImE7ktOLXbkeVZi1a04TC/VkSTBkNKAG/t2TY/W4CprI= Original-Received: by 10.141.202.12 with SMTP id e12mr1500502rvq.1186851608174; Sat, 11 Aug 2007 10:00:08 -0700 (PDT) Original-Received: by 10.141.203.2 with HTTP; Sat, 11 Aug 2007 10:00:08 -0700 (PDT) In-Reply-To: <878x8icngm.fsf@chbouib.org> X-Google-Sender-Auth: 8763abfd30814e77 X-Detected-Kernel: Linux 2.6 (newer, 2) X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:6681 Archived-At: ------=_Part_13550_23752760.1186851608147 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline 2007/8/11, Ludovic Court=E8s : > I'd like to fix the SLIB issue in 1.8.3. > > SLIB 3a4 works perfectly well with 1.8. The thing is that `(ice-9 > slib)' is of no use. It's of no use since no-one has added the functions which Aubrey have added to guile.init when changing slib:s interface to the interpreter. Adding those function is, however, an easy thing to do. I'm not sure that the diff I've included is appropriate for the latest slib, but it could very well be. Apart from providing a more natural division regarding what belongs to Guile and what belongs to slib, slib.scm makes sure that each time some module requires new slib code, it will be loaded into the module (ice-9 slib) and exported from there. I'm not at all sure that guile.init does that, and if it doesn't it will lead to strange behavior: If Guile module A requires some slib feature F1, and, later, a totally unconnected Guile module B requires slib feature F2, which depends on F1, the loading of F2 may or may not lead to a reload of F2 into module B (depending on how guile.init has been implemented). If it leads to a reload, code will be duplicated in modules A and B. If it doesn't load to a reload, F2 won't find the feature F1 which it requires, since it exists in module A. Are you sure that your suggested slib.scm doesn't have any of the above two problems? ------=_Part_13550_23752760.1186851608147 Content-Type: text/x-patch; name=slib.scm.diff; charset=ANSI_X3.4-1968 Content-Transfer-Encoding: base64 X-Attachment-Id: f_f58chz3t Content-Disposition: attachment; filename="slib.scm.diff" SW5kZXg6IHNsaWIuc2NtCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9jdnNyb290L2d1aWxlL2d1aWxl L2d1aWxlLWNvcmUvaWNlLTkvc2xpYi5zY20sdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNDYKZGlm ZiAtcjEuNDYgc2xpYi5zY20KNzNhNzQsMTQ1Cj4gOzs7IChzb2Z0d2FyZS10eXBlKSBzaG91bGQg YmUgc2V0IHRvIHRoZSBnZW5lcmljIG9wZXJhdGluZyBzeXN0ZW0gdHlwZS4KPiA7OzsgVU5JWCwg Vk1TLCBNQUNPUywgQU1JR0EgYW5kIE1TLURPUyBhcmUgc3VwcG9ydGVkLgo+IChkZWZpbmUgc29m dHdhcmUtdHlwZQo+ICAgKGlmIChzdHJpbmc8PyAodmVyc2lvbikgIjEuNiIpCj4gICAgICAgKGxh bWJkYSAoKSAnVU5JWCkKPiAgICAgICAobGFtYmRhICgpICd1bml4KSkpCj4gCj4gKGRlZmluZSAo dXNlci12aWNpbml0eSkKPiAgIChjYXNlIChzb2Z0d2FyZS10eXBlKQo+ICAgICAoKHZtcykJIlsu XSIpCj4gICAgIChlbHNlCSIiKSkpCj4gCj4gKGRlZmluZSB2aWNpbml0eTpzdWZmaXg/Cj4gICAo bGV0ICgoc3VmZmkKPiAJIChjYXNlIChzb2Z0d2FyZS10eXBlKQo+IAkgICAoKGFtaWdhKQkJCQkn KCNcOiAjXC8pKQo+IAkgICAoKG1hY29zIHRoaW5rYykJCQknKCNcOikpCj4gCSAgICgobXMtZG9z IHdpbmRvd3MgYXRhcmlzdCBvcy8yKQknKCNcXCAjXC8pKQo+IAkgICAoKG5vc3ZlKQkJCQknKCNc OiAjXC4pKQo+IAkgICAoKHVuaXggY29oZXJlbnQgcGxhbjkpCQknKCNcLykpCj4gCSAgICgodm1z KQkJCQknKCNcOiAjXF0pKQo+IAkgICAoZWxzZQo+IAkgICAgKHdhcm4gInJlcXVpcmUuc2NtIiAn dW5rbm93biAnc29mdHdhcmUtdHlwZSAoc29mdHdhcmUtdHlwZSkpCj4gCSAgICAiLyIpKSkpCj4g ICAgIChsYW1iZGEgKGNocikgKGFuZCAobWVtdiBjaHIgc3VmZmkpICN0KSkpKQo+IAo+IChkZWZp bmUgKHBhdGhuYW1lLT52aWNpbml0eSBwYXRobmFtZSkKPiAgIChsZXQgbG9vcCAoKGkgKC0gKHN0 cmluZy1sZW5ndGggcGF0aG5hbWUpIDEpKSkKPiAgICAgKGNvbmQgKChuZWdhdGl2ZT8gaSkgIiIp Cj4gCSAgKCh2aWNpbml0eTpzdWZmaXg/IChzdHJpbmctcmVmIHBhdGhuYW1lIGkpKQo+IAkgICAo c3Vic3RyaW5nIHBhdGhuYW1lIDAgKCsgaSAxKSkpCj4gCSAgKGVsc2UgKGxvb3AgKC0gaSAxKSkp KSkpCj4gCj4gKGRlZmluZSAocHJvZ3JhbS12aWNpbml0eSkKPiAgIChkZWZpbmUgY2xwIChjdXJy ZW50LWxvYWQtcG9ydCkpCj4gICAoaWYgY2xwCj4gICAgICAgKHBhdGhuYW1lLT52aWNpbml0eSAo cG9ydC1maWxlbmFtZSBjbHApKQo+ICAgICAgIChzbGliOmVycm9yICdwcm9ncmFtLXZpY2luaXR5 ICIgY2FsbGVkOyB1c2Ugc2xpYjpsb2FkIHRvIGxvYWQiKSkpCj4gCj4gKGRlZmluZSBzdWItdmlj aW5pdHkKPiAgIChjYXNlIChzb2Z0d2FyZS10eXBlKQo+ICAgICAoKHZtcykgKGxhbWJkYQo+IAkg ICAgICAgKHZpYyBuYW1lKQo+IAkgICAgIChsZXQgKChsIChzdHJpbmctbGVuZ3RoIHZpYykpKQo+ IAkgICAgICAgKGlmIChvciAoemVybz8gKHN0cmluZy1sZW5ndGggdmljKSkKPiAJCSAgICAgICAo bm90IChjaGFyPT8gI1xdIChzdHJpbmctcmVmIHZpYyAoLSBsIDEpKSkpKQo+IAkJICAgKHN0cmlu Zy1hcHBlbmQgdmljICJbIiBuYW1lICJdIikKPiAJCSAgIChzdHJpbmctYXBwZW5kIChzdWJzdHJp bmcgdmljIDAgKC0gbCAxKSkKPiAJCQkJICAiLiIgbmFtZSAiXSIpKSkpKQo+ICAgICAoZWxzZSAo bGV0ICgoKnZpY2luaXR5LXN1ZmZpeCoKPiAJCSAoY2FzZSAoc29mdHdhcmUtdHlwZSkKPiAJCSAg ICgobm9zdmUpICIuIikKPiAJCSAgICgobWFjb3MgdGhpbmtjKSAiOiIpCj4gCQkgICAoKG1zLWRv cyB3aW5kb3dzIGF0YXJpc3Qgb3MvMikgIlxcIikKPiAJCSAgICgodW5peCBjb2hlcmVudCBwbGFu OSBhbWlnYSkgIi8iKSkpKQo+IAkgICAgKGxhbWJkYSAodmljIG5hbWUpCj4gCSAgICAgIChzdHJp bmctYXBwZW5kIHZpYyBuYW1lICp2aWNpbml0eS1zdWZmaXgqKSkpKSkpCj4gCj4gKGRlZmluZSB3 aXRoLWxvYWQtcGF0aG5hbWUKPiAgIChsZXQgKChleGNoYW5nZQo+IAkgKGxhbWJkYSAobmV3KQo+ IAkgICAobGV0ICgob2xkIHByb2dyYW0tdmljaW5pdHkpKQo+IAkgICAgIChzZXQhIHByb2dyYW0t dmljaW5pdHkgbmV3KQo+IAkgICAgIG9sZCkpKSkKPiAgICAgKGxhbWJkYSAocGF0aCB0aHVuaykK PiAgICAgICAoZGVmaW5lIG9sZCAjZikKPiAgICAgICAoZGVmaW5lIHZpYyAocGF0aG5hbWUtPnZp Y2luaXR5IHBhdGgpKQo+ICAgICAgIChkeW5hbWljLXdpbmQKPiAJICAobGFtYmRhICgpIChzZXQh IG9sZCAoZXhjaGFuZ2UgKGxhbWJkYSAoKSB2aWMpKSkpCj4gCSAgdGh1bmsKPiAJICAobGFtYmRh ICgpIChleGNoYW5nZSBvbGQpKSkpKSkKPiAKMjA0YTI3NywyNzgKPiAoZGVmaW5lIHNsaWI6ZmVh dHVyZXMgKmZlYXR1cmVzKikKPiAK ------=_Part_13550_23752760.1186851608147 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel ------=_Part_13550_23752760.1186851608147--