Hi Brad, what I have working in Max is that each object is one isolated interpreter so that users can have multiple instances, including the ability to run one in the scheduler thread and one in the low priority gui thread. I have thought about enabling a global one as well, but it's pretty easy to use send and receive objects to simulate that with the current system, while the reverse was not true. This was one of the reasons I chose S7 actually, I looked at Chicken but it's not re-entrant so multiple instances was not going to be simple to do. I've been meaning to check out your code for the the sc and chuck objects too!
iain
On Thu, Oct 22, 2020 at 10:38 AM Brad Garton garton@columbia.edu wrote:
One question occurs to me: do you plan for multiple object instantiations? For my lisp interpreter, you can do that BUT all of the instantiated objects in the patcher communicate with a single interpreter (i.e. they can share data, symbols, etc.). In some of the other objects I did (rtcmix~, sc3~, chuck~) I allowed multiple patcher objects and each one was a separate instance of the language. There are costs and benefits both ways, of course.
brad
On Thu, Oct 22, 2020 at 8:51 AM Iain Duncan iainduncanlists@gmail.com wrote:
Thanks Brad and Joe. Brad, yes I found your work when I was doing research, and it was good validation that such a thing could work! I wound up going with S7 over Common Lisp as the embedding story is really simple, and I like the way S7 has CL macros but one simple namespace (similar to Clojure and Janet) which works nicely in Max.
iain
On Thu, Oct 22, 2020 at 8:35 AM Brad Garton garton@columbia.edu wrote:
This sounds like a terrific project!
I don't know if this is of interest, but I wrote a Common Lisp interpreter object for Max/MSP awhile ago. The interpreter was implemented in java, so I'm not sure if it runs with contemporary Max/MSP-s (they dropped explicit java support, but I've heard from some that it still works).
http://sites.music.columbia.edu/brad/maxlispj/
brad
On Thu, Oct 22, 2020 at 7:32 AM Joe Deken newblankets@newblankets.org wrote:
Hello Ian, (Allowing for time-zones and the dateline) I would eagerly like to be the
-- FIFTH IMMEDIATE HEARTY "YES" VOTE!? --
From my own viewpoint, the introduction of LISP structures and capability into Pd would be seminal to new visions and vistas for Pd itself. (I am warped by having conversations with Chris McCormick and other aficionados of Clojure, incorrigible years myself with emacs-LISP, and even -- when dinosaurs roamed the earth, with giants such as John McCarthy -- some small bit of tme of my own in his shop and among his disciples at CSAIL.
Lest my mind wander (further), I'll say this more concretely: New Blankets is happy to offer resources for your efforts if such resources would turn out to be useful. (Not the dreaded "bounty" avenue -- I'm thinking more of something like a *Pd-Weekend* at my place here in San Diego (or at yours) -- Such PdW would be a "round workbench" session as Katja dubs -- you could present your PdScheme work (when you're ready) to a hands-on group who would riff on your schemes and move them forward. At first attempt, this Pd-Weekend could even be virtual and open to all via round-workbench sessions at say: -- https://meet.jit.si/duncan_pd_scheme/ --
A personal plea ... hope you will include in your vision the wonderful ideas of Brian Harvey and his SNAP! visual-interfacing achievements. (Some antidote is needed with real LISP to counter the bogus infestation of Scratch! which seems to have taken pernicious hold world wide ...)
On Thu, October 22, 2020 1:34 am, pd-list-request@lists.iem.at wrote:
1. Checking for interest: Scheme interpreter external for PD (Iain
Duncan)
Message: 1
Date: Wed, 21 Oct 2020 20:14:26 -0700 From: Iain Duncan iainduncanlists@gmail.com To: pd-list@lists.iem.at Subject: [PD] Checking for interest: Scheme interpreter external for PD Hello, I'm the author of Scheme for Max, a relatively new open source
external for Max/MSP that hosts an embedded Scheme Lisp interpreter using
S7, the Scheme implementation from Bill at CCRMA, also used in Snd and
Common Music. The external allows one to do things like script and live code Max in scheme, including evaluating lisp code on the fly from files or
message boxes, sending messages to other objects, writing to and from
common data structures, and interacting with the scheduler. I'm pretty excited about how well it's working for my purposes, and will be doing a new release this fall as part of my MMus at UVic, as well as turning it into a thesis project. I also intend to include full support for the Common
Music algorithmic composition toolkit (which also is programmed in S7
scheme or SAL)
I have been kicking around the idea of trying a PD port, and wanted to
check whether this sounded interesting to folks in PD land. I like the idea
of port because it's always good to be have one's work usable on more
than
one platform, and linux support would be good for low latency use
cases and
things like running on small machines. I expect this would be a significant amount of work though, so figured I'd see if it sounded interesting to
folks first.
You can get the idea of how it works from the v1 demo video if you
want to
see what I'm getting at. https://www.youtube.com/watch?v=ErirIFCTdjg
Comments, questions, feedback welcome.
Iain
Message: 2 Date: Thu, 22 Oct 2020 08:35:01 +0200 From: IOhannes m zmoelnig zmoelnig@iem.at
...
so now that you ask: i think it would be great.
gfadmsr IOhannes
Message: 3 Date: Thu, 22 Oct 2020 09:56:16 +0200 From: "Peter P." peterparker@fastmail.com
...
It would be great to have esp common list available in Pd as part of
an open-source licensed external indeed.
Message: 4 Date: Thu, 22 Oct 2020 08:49:59 +0100 From: Andy Farnell padawan12@obiwannabe.co.uk
....
Would love to see Scheme come to Pd. Thanks for that Iain.
Andy
Message: 5 Date: Thu, 22 Oct 2020 10:27:10 +0200 From: ub ub@xdv.org
....
i first met functional programming with fluxus and it turned my head
inside out. %-)
would be absolutely great to have that in pd!
cheers,
ub
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list