Csound Csound-dev Csound-tekno Search About

[Csnd] "Auto-fill syntax" idea

Date2009-10-24 00:37
Fromspatz0r
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

Date2009-10-24 00:53
FromRichard 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"

Date2009-10-24 08:02
Fromedexter5
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"
> 
> 

Date2009-10-24 08:05
Fromedexter5
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
> 

Date2009-10-24 08:21
Fromedexter5
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"
>> 
>> 
> 
> 

Date2009-10-24 12:06
FromPeiman 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"

Date2009-10-26 08:24
FromAndres 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
 wrote:
> 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"
>



-- 


Andrés


Send bugs reports to this list.
To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe csound"

Date2009-10-26 08:46
FromPeiman 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
>  wrote:
>> 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"
>>
>
>
>
> -- 
>
>
> Andrés
>
>
> 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"

Date2009-11-13 23:57
Fromspatz0r
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.

Date2009-11-14 08:34
Fromricharddobson@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"