<div dir="ltr">Dear mentors, <div>                   I have submitted my draft proposal for the project "General Midi Mad Dash". I have structured the proposal according to the discussion on this topic. It would be great if you review the proposal for clarity and completeness and provide any valuable feedback. </div><div><br></div><div>Thanks & Regards, </div><div>Ishan</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Apr 9, 2021 at 7:32 AM Jonathan Wilkes <<a href="mailto:jon.w.wilkes@gmail.com">jon.w.wilkes@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">> And then there's still the issue with `dir` that was reported previously (actually, two issues: `dir` only works with an argument, and it reports the wrong directory).<br>
<br>
Yes, good catch. I really need an `[abstractioninfo]` that is the same<br>
as `[canvasinfo]` except it skips levels based on canvas_getrootfor.<br>
Could also add an "instance" method to count extant instances.<br>
<br>
-Jonathan<br>
<br>
<br>
On Thu, Apr 8, 2021 at 6:58 PM Albert Graef <<a href="mailto:aggraef@gmail.com" target="_blank">aggraef@gmail.com</a>> wrote:<br>
><br>
> Hi Ishan,<br>
><br>
> Not bad at all! :) You need to rename pdcontrol-test.pd to pdcontrol.pd, though, and I'd also add a $0-prefix to the open-page receiver.<br>
><br>
> I've done that and some additional cosmetic changes. The result is attached below, along with a modified version of your test patch which includes a few more test cases. Seems to work pretty well for me. I'm wondering, though, whether we couldn't just modify pddplink so that it can optionally take the URL/filename from its inlet instead of always having to specify it as an argument. Then no dynamic patching would be needed, which would make things a lot simpler.<br>
><br>
> And then there's still the issue with `dir` that was reported previously (actually, two issues: `dir` only works with an argument, and it reports the wrong directory). I wonder whether those may be fixed with something along the lines of the more elaborate machinery in the $0-args subpatch which processes the args message?<br>
><br>
> Of course, we might also just backport pdcontrol from vanilla and provide that as a cross-compatible alternative to canvasinfo. But nah, that would be too easy, wouldn't it? ;-)<br>
><br>
> Albert<br>
><br>
><br>
> On Thu, Apr 8, 2021 at 11:10 PM Ishan Kumar Kaler <<a href="mailto:kumarkalerishan@gmail.com" target="_blank">kumarkalerishan@gmail.com</a>> wrote:<br>
>><br>
>> I have implemented a test patch for pdcontrol using pddplink from the pddp library. The patch files are in the repo and also attached with the mail. pddplink does not allow me to take $arguments as it rendered an embedded comment link so for this patch I had to use dynamic patching creating a new sub-patch made of pddplink object and input.<br>
>> The patch opens the link two times in the browser for me(cannot exactly figure out the reason, could some issue due to dynamic connection or some problem with mine default broswer), additional testing is required.<br>
>> Also in the case of this test-patch and/or in the default [pdcontrol] object in Pdvanilla, when we pass an invalid argument(wrong website domain), the object does not do anything and neither does throw any error or console output.<br>
>><br>
>> - Ishan<br>
>><br>
>> On Wed, Apr 7, 2021 at 11:42 PM Albert Graef <<a href="mailto:aggraef@gmail.com" target="_blank">aggraef@gmail.com</a>> wrote:<br>
>>><br>
>>> Matt, you beat me to it. ;-) Anyway, it might be possible to implement the browse method using some stuff from the pddp library maybe?<br>
>>><br>
>>> Albert<br>
>>><br>
>>><br>
>>> On Wed, Apr 7, 2021 at 8:01 PM Matt Barber <<a href="mailto:brbrofsvl@gmail.com" target="_blank">brbrofsvl@gmail.com</a>> wrote:<br>
>>>><br>
>>>> The [pdcontrol] abstraction works similarly to, but not identically to the Pd builtin. Differences:<br>
>>>><br>
>>>> 1. Pd builtin has a "browse" method<br>
>>>> 2. Pd builtin allows "dir" method with no arguments<br>
>>>><br>
>>>> Also in Pd vanilla when you escape \$0 or any dollarsign value as an argument it's passed to the abstraction without expanding, but apparently not in Purr. And this affects how [pdcontrol] gets args.<br>
>>>><br>
>>>> On Wed, Apr 7, 2021 at 3:12 AM ishan kumar kaler <<a href="mailto:kumarkalerishan@gmail.com" target="_blank">kumarkalerishan@gmail.com</a>> wrote:<br>
>>>>><br>
>>>>> [Pdcontrol] object is inbuilt in Pd vanilla(works for me in Pd version 0.51.3). It was released in version 0.50 [Ref = <a href="http://msp.ucsd.edu/Pd_documentation/x5.htm" rel="noreferrer" target="_blank">http://msp.ucsd.edu/Pd_documentation/x5.htm</a>]. Pdcontrol inbuilt object is unavailable in Purr data.<br>
>>>>><br>
>>>>> Pdcontrol.pd patch, that Jonathan attached to this thread, works in Purr Data but not in Pd vanilla, due to the absence of [canvasinfo] in Pd vanilla.<br>
>>>>><br>
>>>>> - Ishan<br>
>>>>><br>
>>>>> On Wed, Apr 7, 2021 at 4:58 AM Matt Barber <<a href="mailto:brbrofsvl@gmail.com" target="_blank">brbrofsvl@gmail.com</a>> wrote:<br>
>>>>>><br>
>>>>>> It wasn't inlet~ fwd – I remembered wrong. It was inlet~'s inlet, which you can pass floats to in order to initialize from inside.<br>
>>>>>><br>
>>>>>> I'll test pdcontrol tonight after my kids' bedtime. I'd still rather stay up to date with the vanilla built-in when possible, but there might be good reasons to avoid that in this iteration.<br>
>>>>>><br>
>>>>>> Matt<br>
>>>>>><br>
>>>>>> On Tue, Apr 6, 2021 at 6:06 PM Jonathan Wilkes <<a href="mailto:jon.w.wilkes@gmail.com" target="_blank">jon.w.wilkes@gmail.com</a>> wrote:<br>
>>>>>>><br>
>>>>>>> Also-- I think I used my `[pdcontrol]` abstraction for something I<br>
>>>>>>> posted on the Pd Forum, and none of the Pd Vanilla users noticed. So<br>
>>>>>>> please test and if it seems to work we can roll it into the build<br>
>>>>>>> monstrosity somewhere.<br>
>>>>>>><br>
>>>>>>> One question-- how do we ship an abstraction as a core object? I<br>
>>>>>>> suppose I could make a default-loaded lib named vanilla-compatible for<br>
>>>>>>> stuff like this. But then if someone runs Purr without prefs the<br>
>>>>>>> abstraction core objects wouldn't load by default.<br>
>>>>>>><br>
>>>>>>> -Jonathan<br>
>>>>>>><br>
>>>>>>><br>
>>>>>>> On Tue, Apr 6, 2021 at 6:02 PM Albert Graef <<a href="mailto:aggraef@gmail.com" target="_blank">aggraef@gmail.com</a>> wrote:<br>
>>>>>>> ><br>
>>>>>>> > I think that inlet~ fwd was added in 2.13.0, released in Aug 2020 (<a href="https://github.com/agraef/purr-data/releases/tag/2.13.0" rel="noreferrer" target="_blank">https://github.com/agraef/purr-data/releases/tag/2.13.0</a>). So it's been implemented for quite a while, at least if the changelogs aren't lying. ;-)<br>
>>>>>>> ><br>
>>>>>>> ><br>
>>>>>>> > On Tue, Apr 6, 2021 at 8:35 PM Matt Barber <<a href="mailto:brbrofsvl@gmail.com" target="_blank">brbrofsvl@gmail.com</a>> wrote:<br>
>>>>>>> >><br>
>>>>>>> >> I might be wrong about inlet fwd. I'll look soon.<br>
>>>>>>> >><br>
>>>>>>> >> MB<br>
>>>>>>> >><br>
>>>>>>> >> On Tue, Apr 6, 2021, 1:30 PM Jonathan Wilkes <<a href="mailto:jon.w.wilkes@gmail.com" target="_blank">jon.w.wilkes@gmail.com</a>> wrote:<br>
>>>>>>> >>><br>
>>>>>>> >>> On Tue, Apr 6, 2021 at 1:22 PM Matt Barber <<a href="mailto:brbrofsvl@gmail.com" target="_blank">brbrofsvl@gmail.com</a>> wrote:<br>
>>>>>>> >>> ><br>
>>>>>>> >>> > Hello, thanks for the questions.<br>
>>>>>>> >>> ><br>
>>>>>>> >>> > I would prefer that it be Pd-vanilla-with-no-externals compatible. That way it would have maximum usability but could still be included with Purr by default. There are a few updates in Pd that haven't yet AFAIK made it into Purr which could be very helpful, particularly [inlet~ fwd] and [pdcontrol], so getting those into the architecture could be part of this project.<br>
>>>>>>> >>><br>
>>>>>>> >>> * `[inlet~ fwd]` wasn't in the last release of Purr Data, over a year<br>
>>>>>>> >>> ago? If that's true, it will certainly be in the next release.<br>
>>>>>>> >>><br>
>>>>>>> >>> * attached is an abstraction for pdcontrol. Could you check to see if<br>
>>>>>>> >>> it actually works? If so we can just ship it with Purr Data<br>
>>>>>>> >>><br>
>>>>>>> >>> -Jonathan<br>
>>>>>>> >>><br>
>>>>>>> >>> ><br>
>>>>>>> >>> > MB<br>
>>>>>>> >>> ><br>
>>>>>>> >>> > On Sun, Apr 4, 2021 at 2:33 AM ishan kumar kaler <<a href="mailto:kumarkalerishan@gmail.com" target="_blank">kumarkalerishan@gmail.com</a>> wrote:<br>
>>>>>>> >>> >><br>
>>>>>>> >>> >>   Hi,<br>
>>>>>>> >>> >>     Thanks for your generous advice. I'll submit a draft proposal for review asap specifying the framework. Besides that, I have some unsureness regarding project implementation details, namely, what Pd version we have to use in the project (pd-l2ork 2.x or pd vanilla)?  Along with core vanilla objects, should we use objects from external libraries (let's say [drunk] from cyclone)?<br>
>>>>>>> >>> >><br>
>>>>>>> >>> >> Best regards,<br>
>>>>>>> >>> >> Ishan<br>
>>>>>>> >>> >><br>
>>>>>>> >>> >> On Sun, Apr 4, 2021 at 1:06 AM Matt Barber <<a href="mailto:brbrofsvl@gmail.com" target="_blank">brbrofsvl@gmail.com</a>> wrote:<br>
>>>>>>> >>> >>><br>
>>>>>>> >>> >>> Welcome! Since this is Pd Vanilla only, you'll want to familiarize yourself asap with abstractions and the [clone] object. Also, the framework for storing, loading, selecting, and playing will be more important than actually completing all of the synths. Be sure to include how you might tackle this framework in your proposal.<br>
>>>>>>> >>> >>><br>
>>>>>>> >>> >>> Matt<br>
>>>>>>> >>> >>><br>
>>>>>>> >>> >>> On Fri, Apr 2, 2021 at 4:04 PM ishan kumar kaler <<a href="mailto:kumarkalerishan@gmail.com" target="_blank">kumarkalerishan@gmail.com</a>> wrote:<br>
>>>>>>> >>> >>>><br>
>>>>>>> >>> >>>>   Hi,<br>
>>>>>>> >>> >>>>     I have created Synth from VSTs in the past. As far as Pure-data is concerned, I have created some basic synths using AM/FM Synthesis and effects. I'm readily exploring more on the go.<br>
>>>>>>> >>> >>>><br>
>>>>>>> >>> >>>> Best regards,<br>
>>>>>>> >>> >>>> Ishan<br>
>>>>>>> >>> >>>><br>
>>>>>>> >>> >>>> On Fri, Apr 2, 2021 at 10:59 PM Jonathan Wilkes <<a href="mailto:jon.w.wilkes@gmail.com" target="_blank">jon.w.wilkes@gmail.com</a>> wrote:<br>
>>>>>>> >>> >>>>><br>
>>>>>>> >>> >>>>> On Fri, Apr 2, 2021 at 12:54 PM ishan kumar kaler<br>
>>>>>>> >>> >>>>> <<a href="mailto:kumarkalerishan@gmail.com" target="_blank">kumarkalerishan@gmail.com</a>> wrote:<br>
>>>>>>> >>> >>>>> ><br>
>>>>>>> >>> >>>>> > Hello everyone,<br>
>>>>>>> >>> >>>>> >            My name is Ishan and I am CS Undergrad. I have done few development projects until now and have some Open Source Experience. I have an interest in music production and some experience in sound synthesis.<br>
>>>>>>> >>> >>>>> ><br>
>>>>>>> >>> >>>>> > I'm interested in contributing to the Purr Data project and working on the project 'General Midi Library'.<br>
>>>>>>> >>> >>>>> ><br>
>>>>>>> >>> >>>>> > In the past, I have worked with DAWs and VSTs and have some experience with Pure Data also. I'm currently exploring Purr Data in-depth and familiarizing myself with the codebase while making contributions all along.<br>
>>>>>>> >>> >>>>> ><br>
>>>>>>> >>> >>>>> > I wish to ask if there's an IRC channel alongside the mailing list, as I couldn't find one. I'll be more than happy to have suggestions from you all :)<br>
>>>>>>> >>> >>>>> ><br>
>>>>>>> >>> >>>>> > Best regards,<br>
>>>>>>> >>> >>>>> > Ishan<br>
>>>>>>> >>> >>>>><br>
>>>>>>> >>> >>>>> Hello Ishan,<br>
>>>>>>> >>> >>>>><br>
>>>>>>> >>> >>>>> Welcome!<br>
>>>>>>> >>> >>>>><br>
>>>>>>> >>> >>>>> We don't have a chat channel atm, but you're welcome to ask any<br>
>>>>>>> >>> >>>>> questions here on the mailing list.<br>
>>>>>>> >>> >>>>><br>
>>>>>>> >>> >>>>> As for the project-- have you built any software synths before?<br>
>>>>>>> >>> >>>>><br>
>>>>>>> >>> >>>>> Best,<br>
>>>>>>> >>> >>>>> Jonathan<br>
>>>>>>> >>> >>>>><br>
>>>>>>> >>> >>>>> > _______________________________________________<br>
>>>>>>> >>> >>>>> > L2Ork-dev mailing list<br>
>>>>>>> >>> >>>>> > <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>>>>>>> >>> >>>>> > <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
>>>>>>> >>> >>>>> _______________________________________________<br>
>>>>>>> >>> >>>>> L2Ork-dev mailing list<br>
>>>>>>> >>> >>>>> <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>>>>>>> >>> >>>>> <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
>>>>>>> >>> >>>><br>
>>>>>>> >>> >>>> _______________________________________________<br>
>>>>>>> >>> >>>> L2Ork-dev mailing list<br>
>>>>>>> >>> >>>> <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>>>>>>> >>> >>>> <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
>>>>>>> >>> >>><br>
>>>>>>> >>> >>> _______________________________________________<br>
>>>>>>> >>> >>> L2Ork-dev mailing list<br>
>>>>>>> >>> >>> <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>>>>>>> >>> >>> <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
>>>>>>> >>> >><br>
>>>>>>> >>> >> _______________________________________________<br>
>>>>>>> >>> >> L2Ork-dev mailing list<br>
>>>>>>> >>> >> <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>>>>>>> >>> >> <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
>>>>>>> >>> ><br>
>>>>>>> >>> > _______________________________________________<br>
>>>>>>> >>> > L2Ork-dev mailing list<br>
>>>>>>> >>> > <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>>>>>>> >>> > <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
>>>>>>> >>> _______________________________________________<br>
>>>>>>> >>> L2Ork-dev mailing list<br>
>>>>>>> >>> <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>>>>>>> >>> <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
>>>>>>> >><br>
>>>>>>> >> _______________________________________________<br>
>>>>>>> >> L2Ork-dev mailing list<br>
>>>>>>> >> <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>>>>>>> >> <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
>>>>>>> ><br>
>>>>>>> ><br>
>>>>>>> ><br>
>>>>>>> > --<br>
>>>>>>> > Dr. Albert Gr"af<br>
>>>>>>> > Computer Music Research Group, JGU Mainz, Germany<br>
>>>>>>> > Email: <a href="mailto:aggraef@gmail.com" target="_blank">aggraef@gmail.com</a>, web: <a href="https://agraef.github.io/" rel="noreferrer" target="_blank">https://agraef.github.io/</a><br>
>>>>>>> > _______________________________________________<br>
>>>>>>> > L2Ork-dev mailing list<br>
>>>>>>> > <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>>>>>>> > <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
>>>>>>> _______________________________________________<br>
>>>>>>> L2Ork-dev mailing list<br>
>>>>>>> <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>>>>>>> <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
>>>>>><br>
>>>>>> _______________________________________________<br>
>>>>>> L2Ork-dev mailing list<br>
>>>>>> <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>>>>>> <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
>>>>><br>
>>>>> _______________________________________________<br>
>>>>> L2Ork-dev mailing list<br>
>>>>> <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>>>>> <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
>>>><br>
>>>> _______________________________________________<br>
>>>> L2Ork-dev mailing list<br>
>>>> <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>>>> <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
>>><br>
>>><br>
>>><br>
>>> --<br>
>>> Dr. Albert Gr"af<br>
>>> Computer Music Research Group, JGU Mainz, Germany<br>
>>> Email: <a href="mailto:aggraef@gmail.com" target="_blank">aggraef@gmail.com</a>, web: <a href="https://agraef.github.io/" rel="noreferrer" target="_blank">https://agraef.github.io/</a><br>
>>> _______________________________________________<br>
>>> L2Ork-dev mailing list<br>
>>> <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>>> <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
>><br>
>> _______________________________________________<br>
>> L2Ork-dev mailing list<br>
>> <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
>> <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
><br>
><br>
><br>
> --<br>
> Dr. Albert Gr"af<br>
> Computer Music Research Group, JGU Mainz, Germany<br>
> Email: <a href="mailto:aggraef@gmail.com" target="_blank">aggraef@gmail.com</a>, web: <a href="https://agraef.github.io/" rel="noreferrer" target="_blank">https://agraef.github.io/</a><br>
> _______________________________________________<br>
> L2Ork-dev mailing list<br>
> <a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
> <a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a><br>
_______________________________________________<br>
L2Ork-dev mailing list<br>
<a href="mailto:L2Ork-dev@disis.music.vt.edu" target="_blank">L2Ork-dev@disis.music.vt.edu</a><br>
<a href="https://disis.music.vt.edu/listinfo/l2ork-dev" rel="noreferrer" target="_blank">https://disis.music.vt.edu/listinfo/l2ork-dev</a></blockquote></div>