[Csnd] "Auto-fill syntax" idea
Date | 2009-10-24 00:37 |
From | spatz0r |
Subject | [Csnd] "Auto-fill syntax" idea |
Hello CSound developers, users and enthusiasts, I would like to mention an idea I've been contemplating with Dr. Boulanger at Berklee, which is a variant of something I've already posted to the dev section. I am unsure where this post should go, since it could arguably be directed towards the syntax of CSound itself or it could be directed toward Andres Cabrera and developers of other CSound front ends. Dr. B suggested from a conversation we've been having that it would at the very least be a useful didactic addition to the language to reformat the structure of outputs and arguments to generically "auto-fill" typical generators with "default" values. Whether this could be implemented at the CSound level by creating a new opcode for each instrument that performs this function of whether it would be implemented at the QuteCSound etc. level for a specific ASCII combination the program looks for to intelligently replace values remains to be seen. For example, in my opinion the simplest thing you can do in a synthesis system is try to procure an A440 sine as a means of feeling your way around. This is the first thing we learn in CSound: asig oscil 10000 440 1 (paired with f1 0 4096 10 1 and i1 0 6) Maybe we could do this as a way for beginners to remove distracting numbers entirely and see only the output and arguments generically: xxx oscil xxx xxx xxx Which, at the CSound level in combination with an opcode that interprets "xxx"s or at the frontend level with a portion built in that scans for "xxx"s, renders as asig oscil 10000 440 1 by default. Not only does this have didactic prospects, it has advantages for demoing opcodes one is unfamiliar with, making generic every opcode except one and then adjusting them back and forth one at a time until a greater sense of its function is established. Also, for managing more complex opcodes such as ones with over 20 arguments. Yeah? No? -Nick Suda nick.suda@gmail.com (425) 941-0093 Renton, WA/Boston, MA |
Date | 2009-10-24 00:53 |
From | Richard Dobson |
Subject | [Csnd] Re: "Auto-fill syntax" idea |
spatz0r wrote: > Hello CSound developers, users and enthusiasts, > .. > > For example, in my opinion the simplest thing you can do in a synthesis > system is try to procure an A440 sine as a means of feeling your way around. > This is the first thing we learn in CSound: > > asig oscil 10000 440 1 > Oh, well, I would have hoped that this would use 0dBFS = 1, and become asig oscil 0.4, 440, 1. Perhaps that can be the second thing people learn in Csound. VC++ offers (sort-of) auto-complete of class and variable names; this is of course a feature of the editor, not of the language. What editors do is entirely up to them. Use of the tab key (as for path completion in unix terminal sessions) comes to mind. But I suspect even this will not render the learning curve entirely flat! Richard Dobson Send bugs reports to this list. To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound" |
Date | 2009-10-24 08:02 |
From | edexter5 |
Subject | [Csnd] Re: "Auto-fill syntax" idea |
It may be possible to do something like this in python linestring = line.split(' ') if 'keyword' in linestring: line = (this is where we will do that) I was doing a syntax hilighter for csound with the richedit2 control in python and you have to do something simular for that.. You can do all kinds of strange stuff if python is embeded into the editor so that you have control of the input and output windows. Richard Dobson wrote: > > spatz0r wrote: >> Hello CSound developers, users and enthusiasts, >> > .. >> >> For example, in my opinion the simplest thing you can do in a synthesis >> system is try to procure an A440 sine as a means of feeling your way >> around. >> This is the first thing we learn in CSound: >> >> asig oscil 10000 440 1 >> > > Oh, well, I would have hoped that this would use 0dBFS = 1, and become > asig oscil 0.4, 440, 1. Perhaps that can be the second thing people > learn in Csound. > > VC++ offers (sort-of) auto-complete of class and variable names; this is > of course a feature of the editor, not of the language. What editors do > is entirely up to them. Use of the tab key (as for path completion in > unix terminal sessions) comes to mind. But I suspect even this will not > render the learning curve entirely flat! > > Richard Dobson > > > > Send bugs reports to this list. > To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe > csound" > > |
Date | 2009-10-24 08:05 |
From | edexter5 |
Subject | [Csnd] Re: "Auto-fill syntax" idea |
I have a list of all the table positions so they could be a different color also... look up my ifn parser tools. spatz0r wrote: > > Hello CSound developers, users and enthusiasts, > > I would like to mention an idea I've been contemplating with Dr. Boulanger > at Berklee, which is a variant of something I've already posted to the dev > section. I am unsure where this post should go, since it could arguably be > directed towards the syntax of CSound itself or it could be directed > toward Andres Cabrera and developers of other CSound front ends. > > Dr. B suggested from a conversation we've been having that it would at the > very least be a useful didactic addition to the language to reformat the > structure of outputs and arguments to generically "auto-fill" typical > generators with "default" values. Whether this could be implemented at the > CSound level by creating a new opcode for each instrument that performs > this function of whether it would be implemented at the QuteCSound etc. > level for a specific ASCII combination the program looks for to > intelligently replace values remains to be seen. > > For example, in my opinion the simplest thing you can do in a synthesis > system is try to procure an A440 sine as a means of feeling your way > around. This is the first thing we learn in CSound: > > asig oscil 10000 440 1 > > (paired with f1 0 4096 10 1 and i1 0 6) > > Maybe we could do this as a way for beginners to remove distracting > numbers entirely and see only the output and arguments generically: > > xxx oscil xxx xxx xxx > > Which, at the CSound level in combination with an opcode that interprets > "xxx"s or at the frontend level with a portion built in that scans for > "xxx"s, renders as > > asig oscil 10000 440 1 > > by default. > > Not only does this have didactic prospects, it has advantages for demoing > opcodes one is unfamiliar with, making generic every opcode except one and > then adjusting them back and forth one at a time until a greater sense of > its function is established. Also, for managing more complex opcodes such > as ones with over 20 arguments. > > Yeah? No? > > -Nick Suda > nick.suda@gmail.com > (425) 941-0093 > Renton, WA/Boston, MA > |
Date | 2009-10-24 08:21 |
From | edexter5 |
Subject | [Csnd] Re: "Auto-fill syntax" idea |
I dont think I need to split it first... it was just a quick reply.. edexter5 wrote: > > It may be possible to do something like this in python > > linestring = line.split(' ') > if 'keyword' in linestring: > line = (this is where we will do that) > > I was doing a syntax hilighter for csound with the richedit2 control in > python and > you have to do something simular for that.. You can do all kinds of > strange stuff > if python is embeded into the editor so that you have control of the input > and output windows. > > > Richard Dobson wrote: >> >> spatz0r wrote: >>> Hello CSound developers, users and enthusiasts, >>> >> .. >>> >>> For example, in my opinion the simplest thing you can do in a synthesis >>> system is try to procure an A440 sine as a means of feeling your way >>> around. >>> This is the first thing we learn in CSound: >>> >>> asig oscil 10000 440 1 >>> >> >> Oh, well, I would have hoped that this would use 0dBFS = 1, and become >> asig oscil 0.4, 440, 1. Perhaps that can be the second thing people >> learn in Csound. >> >> VC++ offers (sort-of) auto-complete of class and variable names; this is >> of course a feature of the editor, not of the language. What editors do >> is entirely up to them. Use of the tab key (as for path completion in >> unix terminal sessions) comes to mind. But I suspect even this will not >> render the learning curve entirely flat! >> >> Richard Dobson >> >> >> >> Send bugs reports to this list. >> To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe >> csound" >> >> > > |
Date | 2009-10-24 12:06 |
From | Peiman Khosravi |
Subject | [Csnd] Re: Re: "Auto-fill syntax" idea |
Great idea!! They have added a new feature in max5 as well that auto completes the object name, displaying all objects that start with the given strings and showing them in a drop down menu. It does make things much faster and would be very very welcome in a csound editor. Best Peiman On 24 Oct 2009, at 08:21, edexter5 wrote: > > I dont think I need to split it first... it was just a quick reply.. > > edexter5 wrote: >> >> It may be possible to do something like this in python >> >> linestring = line.split(' ') >> if 'keyword' in linestring: >> line = (this is where we will do that) >> >> I was doing a syntax hilighter for csound with the richedit2 >> control in >> python and >> you have to do something simular for that.. You can do all kinds of >> strange stuff >> if python is embeded into the editor so that you have control of >> the input >> and output windows. >> >> >> Richard Dobson wrote: >>> >>> spatz0r wrote: >>>> Hello CSound developers, users and enthusiasts, >>>> >>> .. >>>> >>>> For example, in my opinion the simplest thing you can do in a >>>> synthesis >>>> system is try to procure an A440 sine as a means of feeling your >>>> way >>>> around. >>>> This is the first thing we learn in CSound: >>>> >>>> asig oscil 10000 440 1 >>>> >>> >>> Oh, well, I would have hoped that this would use 0dBFS = 1, and >>> become >>> asig oscil 0.4, 440, 1. Perhaps that can be the second thing people >>> learn in Csound. >>> >>> VC++ offers (sort-of) auto-complete of class and variable names; >>> this is >>> of course a feature of the editor, not of the language. What >>> editors do >>> is entirely up to them. Use of the tab key (as for path completion >>> in >>> unix terminal sessions) comes to mind. But I suspect even this >>> will not >>> render the learning curve entirely flat! >>> >>> Richard Dobson >>> >>> >>> >>> Send bugs reports to this list. >>> To unsubscribe, send email sympa@lists.bath.ac.uk with body >>> "unsubscribe >>> csound" >>> >>> >> >> > > -- > View this message in context: http://www.nabble.com/%22Auto-fill-syntax%22-idea-tp26034690p26036732.html > Sent from the Csound - General mailing list archive at Nabble.com. > > > > Send bugs reports to this list. > To unsubscribe, send email sympa@lists.bath.ac.uk with body > "unsubscribe csound" Send bugs reports to this list. To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound" |
Date | 2009-10-26 08:24 |
From | Andres Cabrera |
Subject | [Csnd] Re: Re: Re: "Auto-fill syntax" idea |
Yes the idea is good. There's something basic in this direction in QuteCsound, but would be nice to go further. If you start typing an opcode, the status bar show the first available completion. If you want to use it, press Alt+C or Option+C and the complete opcode template is put there. It's not as versatile as it's not a list, but I'll put it in the todo list. Cheers, Andrés On Sat, Oct 24, 2009 at 11:06 AM, Peiman Khosravi |
Date | 2009-10-26 08:46 |
From | Peiman Khosravi |
Subject | [Csnd] Re: Re: Re: Re: "Auto-fill syntax" idea |
ah this sounds nice. I look forward to using it :-) On 26 Oct 2009, at 08:24, Andres Cabrera wrote: > Yes the idea is good. There's something basic in this direction in > QuteCsound, but would be nice to go further. If you start typing an > opcode, the status bar show the first available completion. If you > want to use it, press Alt+C or Option+C and the complete opcode > template is put there. It's not as versatile as it's not a list, but > I'll put it in the todo list. > > Cheers, > Andrés > > On Sat, Oct 24, 2009 at 11:06 AM, Peiman Khosravi > |
Date | 2009-11-13 23:57 |
From | spatz0r |
Subject | [Csnd] Re: "Auto-fill syntax" idea |
Richard Dobson wrote: > > Oh, well, I would have hoped that this would use 0dBFS = 1, and become > asig oscil 0.4, 440, 1. Perhaps that can be the second thing people > learn in Csound. > Hope I didn't blow your ears off or anything! I have not made it a habit to incorporate 0dbfs = 1 into any of my documents yet because I grew so weary of misunderstanding it and scaring the daylights out of myself with headphones on every time I tried something out... -Nick Thank you all for your comments and ideas. It is really appreciated. I have been keeping this and my two other posts conversationally afloat with Dr. B and you have all assisted me in understanding front-ends and other things better. |
Date | 2009-11-14 08:34 |
From | richarddobson@blueyonder.co.uk |
Subject | [Csnd] Re: Re: 'Auto-fill syntax' idea |
[via webmail - sorry for formmatting] > > Richard Dobson wrote: >> >> Oh, well, I would have hoped that this would use 0dBFS = 1, and become >> asig oscil 0.4, 440, 1. Perhaps that can be the second thing people >> learn in Csound. >> > > Hope I didn't blow your ears off or anything! I have not made it a habit > to > incorporate 0dbfs = 1 into any of my documents yet because I grew so weary > of misunderstanding it and scaring the daylights out of myself with > headphones on every time I tried something out... > No worries... so long as your opcode amplitudes (e.g. in oscil, above) match your 0dBSF setting, it will all work fine. Just changing the 0dbfs value but keeping amplitudes at 16384 etc will however clip the output, and maybe grunge the speakers too! Richard Dobson Send bugs reports to this list. To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound" |