From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Tom Lord Newsgroups: gmane.lisp.guile.devel Subject: Re: Recursive mutexes? Date: Sun, 27 Oct 2002 09:21:49 -0800 (PST) Sender: guile-devel-admin@gnu.org Message-ID: <200210271721.JAA29475@morrowfield.regexps.com> References: <87r8edos41.fsf@zagadka.ping.de> <87hef86e3d.fsf@raven.i.defaultvalue.org> <200210262247.PAA26819@morrowfield.regexps.com> NNTP-Posting-Host: main.gmane.org X-Trace: main.gmane.org 1035738980 25207 80.91.224.249 (27 Oct 2002 17:16:20 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Sun, 27 Oct 2002 17:16:20 +0000 (UTC) Cc: rlb@defaultvalue.org, mvo@zagadka.ping.de, guile-devel@gnu.org Return-path: Original-Received: from monty-python.gnu.org ([199.232.76.173]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 185r1M-0006Xp-00 for ; Sun, 27 Oct 2002 18:16:16 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10) id 185r2D-0008E9-00; Sun, 27 Oct 2002 12:17:09 -0500 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.10) id 185r1v-0007x3-00 for guile-devel@gnu.org; Sun, 27 Oct 2002 12:16:51 -0500 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.10) id 185r1s-0007td-00 for guile-devel@gnu.org; Sun, 27 Oct 2002 12:16:50 -0500 Original-Received: from 1cust16.tnt13.sfo8.da.uu.net ([63.10.241.16] helo=morrowfield.regexps.com) by monty-python.gnu.org with esmtp (Exim 4.10) id 185r1q-0007tV-00 for guile-devel@gnu.org; Sun, 27 Oct 2002 12:16:47 -0500 Original-Received: (from lord@localhost) by morrowfield.regexps.com (8.9.1/8.9.1) id JAA29475; Sun, 27 Oct 2002 09:21:49 -0800 (PST) (envelope-from lord@morrowfield.regexps.com) Original-To: neil@ossau.uklinux.net In-reply-to: (message from Neil Jerram on 27 Oct 2002 08:33:48 +0000) Errors-To: guile-devel-admin@gnu.org X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.0.11 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Developers list for Guile, the GNU extensibility library List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.lisp.guile.devel:1628 X-Report-Spam: http://spam.gmane.org/gmane.lisp.guile.devel:1628 Tom> Java semantics seem to me much, much nicer for MIMD (just intuitively, Tom> no elaborate argument). What are MIMD and SISD? "multiple/single instruction; multiple/single data" -- i.e. ordinary multi- and single CPU systems. (I'm not sure anyone really bothers to say SISD -- I made it up. People do say SIMD.) I like Java's synchronized/notify/wait model very much, but how would you express it in Scheme without adding lots of Java-ish class declaration stuff? The suggestion is that you _do_ look into combining the languages. One way to do it is kawa-style in which (caution: this is from old memory) every scheme value is a java object and vice versa. That isn't what I was suggesting. I was suggesting something more layered: Another way to do it is to have a universe of java-ish objects, shared between threads, and one store of Scheme objects per thread. Fine-grain multi-threaded parts in java-ish; course-grain in Scheme, coordinating via call-outs to java-ish. If Guile is currently layered "Scheme over C", this would make it layered "Scheme over both C and java-ish-over-C". If Emacs were done that way, for example, you might wind up with low-level buffers and redisplay in java-ish (redisplay in its own thread); and scheme-extensible threads for handling user interaction, subprocess mgt, redisplay customization, etc. Part of the idea here was to be able to leverage other people's java-ish implementation work in an easy (heh) way. Even though it's not a Schemishly minimalist approach, I think this might actually be a nice model to use when building programs (as in, "easy to write good, correct, maintainable programs with"). How would it map onto GOOPS? Doesn't goops have enough of a MOP to support optimized representations given restrictions on the optimized types? -t _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://mail.gnu.org/mailman/listinfo/guile-devel