From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Matt Wette Newsgroups: gmane.lisp.guile.devel,gmane.lisp.guile.user Subject: Re: New object system? Date: Tue, 1 Aug 2017 07:41:55 -0700 Message-ID: <58B36B43-4EAC-4F8A-B185-13916698F8F0@gmail.com> References: NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\)) Content-Type: multipart/alternative; boundary="Apple-Mail=_4F988CF1-FF2F-455B-A8CE-65DCC6DBE06E" X-Trace: blaine.gmane.org 1501598545 13364 195.159.176.226 (1 Aug 2017 14:42:25 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 1 Aug 2017 14:42:25 +0000 (UTC) Cc: "guile-user@gnu.org" , guile-devel To: Stefan Israelsson Tampe Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Tue Aug 01 16:42:18 2017 Return-path: Envelope-to: guile-devel@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 1dcYN4-0002Yp-HW for guile-devel@m.gmane.org; Tue, 01 Aug 2017 16:42:06 +0200 Original-Received: from localhost ([::1]:42990 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dcYNA-00073P-9z for guile-devel@m.gmane.org; Tue, 01 Aug 2017 10:42:12 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:52550) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dcYN1-00073H-BY for guile-devel@gnu.org; Tue, 01 Aug 2017 10:42:04 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dcYMy-0001lv-MH for guile-devel@gnu.org; Tue, 01 Aug 2017 10:42:03 -0400 Original-Received: from mail-pg0-x232.google.com ([2607:f8b0:400e:c05::232]:38590) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dcYMy-0001l4-G7; Tue, 01 Aug 2017 10:42:00 -0400 Original-Received: by mail-pg0-x232.google.com with SMTP id l64so8721489pge.5; Tue, 01 Aug 2017 07:41:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:message-id:mime-version:subject:date:in-reply-to:cc:to :references; bh=zDJs4iZldGcw94WPuDG/eapN5+OmWOZuf5eVA65hsM8=; b=dBfw9LfGaZ+1ujqYP+FjGN+oDdfYfMqt4X6sFtk6YukgZZ1O/xVOCwTuvnujwCRFeT qJO63hzJWGdC4qVzrzt6/m/cUrZzjzuR6pF7In+e4gjnvvHmdcP8TvTBgbGggHZhLxii LqlRy7WU/gFnVaJKj4o+XV6MCVHfUW9gjsCOmO9DS7aO94hYpgUe1QMODDEPSjmWZa0M MRks8wkcFSAmTEhOJgRJABguSCOge/Pt78arNPwU4o8f3jIDDfNwlZa5HsIwTMfuf31r f7KfP56TK2ArlHnBZ2sGZLSMyZtlb6woWUg6SjwhY/BysyLPGJEugJjkUb5V6WeWh0OP ULxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:message-id:mime-version:subject:date :in-reply-to:cc:to:references; bh=zDJs4iZldGcw94WPuDG/eapN5+OmWOZuf5eVA65hsM8=; b=TYvwOpRsFCYheV0RG8XXq+hPQZMAEPeqOMNEBUsvlnWbwlNdTG/x746us2uYORRZgk leeHYI708v9BwBy6iShQMojvp3TwlKA/KE0sRFnaEHJMkxm/8zuXbxJNQrqtDPsWgKhQ zaDf7BOZKGSoAVHvupfN5xcUws2XUyPCtwYjAvLxEo0LQBoN+GI8csP23Nmn4lfSenMd pFfpD+J77z/3/pHlWQPdcHjTg4cMpuEr5b3rRKytV2LrlZTHMTNjA7eOvF7tl4dxxMeY tpprFuhNGA0KtnoBFxpQUrcTRWRpivu2+o9QGSPcCRejF+D/GF+qb/pgXli0eS35gsPf 3Gug== X-Gm-Message-State: AIVw111e4gBC01G6UiRb4Xg8R8hAl7s1tZvIs9ly8ZTyF87iKw7fB7NL VTBiWrOgk/MyVw== X-Received: by 10.98.8.93 with SMTP id c90mr5473565pfd.237.1501598517771; Tue, 01 Aug 2017 07:41:57 -0700 (PDT) Original-Received: from nautilus.championbroadband.com (216-165-236-44.championbroadband.com. [216.165.236.44]) by smtp.gmail.com with ESMTPSA id n11sm54807801pgr.76.2017.08.01.07.41.56 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 01 Aug 2017 07:41:57 -0700 (PDT) In-Reply-To: X-Mailer: Apple Mail (2.3273) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400e:c05::232 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Original-Sender: "guile-devel" Xref: news.gmane.org gmane.lisp.guile.devel:19252 gmane.lisp.guile.user:14005 Archived-At: --Apple-Mail=_4F988CF1-FF2F-455B-A8CE-65DCC6DBE06E Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii > On Jul 28, 2017, at 11:34 AM, Stefan Israelsson Tampe = wrote: >=20 > Hi all. We have goops, but I wondered how a functional object system = can look like and after some thought I modeled together functional and = python together with scheme. you can find the result at >=20 > http://www.c-lambda.se/functional-python.html = >=20 > If you want to discuss, continue with the email or on the site. I = would like to have a functional object system for guile per default. >=20 > I have a parser for python3 and will try to compile python to the = guile VM. This study is an approach to add features to python that are = not in. In the end I will add mutating objects as well so that one can = mix them. >=20 > I also plan to make a system where the property of mutability can flow = in the execution path and so that dynamically if specifically requested = nothing will mutate and only new data structure will be created someting = like >=20 > (define newobj (do-not-mutate thunk)) >=20 > But that's for the future. >=20 > Have fun! So no generics? Looks cool. Matt --Apple-Mail=_4F988CF1-FF2F-455B-A8CE-65DCC6DBE06E Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=us-ascii
On Jul 28, 2017, at 11:34 AM, Stefan Israelsson Tampe <stefan.itampe@gmail.com> wrote:

Hi all. We have goops, but I wondered how a functional object = system can look like and after some thought I modeled together = functional and python together with scheme. you can find the result = at


If = you want to discuss, continue with the email or on the site. I would = like to have a functional object system for guile per default.

I have a parser for = python3 and will try to compile python to the guile VM. This study is an = approach to add features to python that are not in. In the end I will = add mutating objects as well so that one can mix them.

I also plan to make a = system where the property of mutability can flow in the execution path = and so that dynamically if specifically requested nothing will mutate = and only new data structure will be created someting like

(define newobj = (do-not-mutate thunk))

But that's for the future.

Have fun!

So no generics? =  Looks cool.

Matt

= --Apple-Mail=_4F988CF1-FF2F-455B-A8CE-65DCC6DBE06E--