Csound Csound-dev Csound-tekno Search About

[Cs-dev] Beyond Csound 6: Pure Orc Projects

Date2013-05-07 23:15
FromSteven Yi
Subject[Cs-dev] Beyond Csound 6: Pure Orc Projects
Hi All,

I had a thought yesterday regarding pure orc projects.  With event_i,
we can essentially put in note statements within the orc instead of
the score.  Approaching issues of score writing this way has some
interesting possibilities. For one, as opcodes can take in arrays,
event_i might be able to handle arrays more easily than modifying SCO
statements.  Also, because of functional call syntax, we could imagine
things like:

event_i 1, 0, 2, [1,2,4,5]
evt1:Event = event_i(1, 0, 2, [1, 2, 4 5])  ; assumes Event as a type

If we can get opcodes as a type in the system, we can imagine:

myFreq:Opcode = op(oscil, 2, 4)
evt1:Event = event_i(1, 0, myFreq)

and if we can get type inference working at a higher level, we could just have:

myFreq = op(oscil, 2, 4)
evt1 = event_i(1, 0, myFreq)

This all would require a number of changes, including further
definitions of types in the type system, modifying the semantic phase
for better type inference, and modification of the event block to have
typed args, and also further semantic checks for runtime type checking
for pfields.  Not very simple, but at least the possibilities are
there with what's developing with Csound 6.

Thanks!
steven

------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and 
their applications. This 200-page book is written by three acclaimed 
leaders in the field. The early access version is available now. 
Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2013-05-08 04:37
Fromjoachim heintz
SubjectRe: [Cs-dev] Beyond Csound 6: Pure Orc Projects
hi steven -

this sounds fantastic! for me this is exactly the way which is most 
interesting for the future, bringing all the flexibility of a 
programming language for triggering events. hope csound6 development 
will take this direction.

best -

	joachim


Am 08.05.2013 00:15, schrieb Steven Yi:
> Hi All,
>
> I had a thought yesterday regarding pure orc projects.  With event_i,
> we can essentially put in note statements within the orc instead of
> the score.  Approaching issues of score writing this way has some
> interesting possibilities. For one, as opcodes can take in arrays,
> event_i might be able to handle arrays more easily than modifying SCO
> statements.  Also, because of functional call syntax, we could imagine
> things like:
>
> event_i 1, 0, 2, [1,2,4,5]
> evt1:Event = event_i(1, 0, 2, [1, 2, 4 5])  ; assumes Event as a type
>
> If we can get opcodes as a type in the system, we can imagine:
>
> myFreq:Opcode = op(oscil, 2, 4)
> evt1:Event = event_i(1, 0, myFreq)
>
> and if we can get type inference working at a higher level, we could just have:
>
> myFreq = op(oscil, 2, 4)
> evt1 = event_i(1, 0, myFreq)
>
> This all would require a number of changes, including further
> definitions of types in the type system, modifying the semantic phase
> for better type inference, and modification of the event block to have
> typed args, and also further semantic checks for runtime type checking
> for pfields.  Not very simple, but at least the possibilities are
> there with what's developing with Csound 6.
>
> Thanks!
> steven
>
> ------------------------------------------------------------------------------
> Learn Graph Databases - Download FREE O'Reilly Book
> "Graph Databases" is the definitive new guide to graph databases and
> their applications. This 200-page book is written by three acclaimed
> leaders in the field. The early access version is available now.
> Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel
>

------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and 
their applications. This 200-page book is written by three acclaimed 
leaders in the field. The early access version is available now. 
Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2013-05-08 18:43
FromAndres Cabrera
SubjectRe: [Cs-dev] Beyond Csound 6: Pure Orc Projects
AttachmentsNone  None  

I think this is a very interesting notion Also, note generation in the orchestra can also sync to tempo clocks or audio rate clocks.

( like sc, without the complexity...)

Cheers,
Andres

On May 7, 2013 3:16 PM, "Steven Yi" <stevenyi@gmail.com> wrote:
Hi All,

I had a thought yesterday regarding pure orc projects.  With event_i,
we can essentially put in note statements within the orc instead of
the score.  Approaching issues of score writing this way has some
interesting possibilities. For one, as opcodes can take in arrays,
event_i might be able to handle arrays more easily than modifying SCO
statements.  Also, because of functional call syntax, we could imagine
things like:

event_i 1, 0, 2, [1,2,4,5]
evt1:Event = event_i(1, 0, 2, [1, 2, 4 5])  ; assumes Event as a type

If we can get opcodes as a type in the system, we can imagine:

myFreq:Opcode = op(oscil, 2, 4)
evt1:Event = event_i(1, 0, myFreq)

and if we can get type inference working at a higher level, we could just have:

myFreq = op(oscil, 2, 4)
evt1 = event_i(1, 0, myFreq)

This all would require a number of changes, including further
definitions of types in the type system, modifying the semantic phase
for better type inference, and modification of the event block to have
typed args, and also further semantic checks for runtime type checking
for pfields.  Not very simple, but at least the possibilities are
there with what's developing with Csound 6.

Thanks!
steven

------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and
their applications. This 200-page book is written by three acclaimed
leaders in the field. The early access version is available now.
Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/csound-devel

Date2013-05-08 22:13
Frompeiman khosravi
SubjectRe: [Cs-dev] Beyond Csound 6: Pure Orc Projects
AttachmentsNone  None  
Sounds amazing. 






www.peimankhosravi.co.uk || Subscribe to RSS Feed

To receive emails about upcoming concerts visit this page & enter your email address in the 'follow' section.



On 8 May 2013 18:43, Andres Cabrera <mantaraya36@gmail.com> wrote:

I think this is a very interesting notion Also, note generation in the orchestra can also sync to tempo clocks or audio rate clocks.

( like sc, without the complexity...)

Cheers,
Andres

On May 7, 2013 3:16 PM, "Steven Yi" <stevenyi@gmail.com> wrote:
Hi All,

I had a thought yesterday regarding pure orc projects.  With event_i,
we can essentially put in note statements within the orc instead of
the score.  Approaching issues of score writing this way has some
interesting possibilities. For one, as opcodes can take in arrays,
event_i might be able to handle arrays more easily than modifying SCO
statements.  Also, because of functional call syntax, we could imagine
things like:

event_i 1, 0, 2, [1,2,4,5]
evt1:Event = event_i(1, 0, 2, [1, 2, 4 5])  ; assumes Event as a type

If we can get opcodes as a type in the system, we can imagine:

myFreq:Opcode = op(oscil, 2, 4)
evt1:Event = event_i(1, 0, myFreq)

and if we can get type inference working at a higher level, we could just have:

myFreq = op(oscil, 2, 4)
evt1 = event_i(1, 0, myFreq)

This all would require a number of changes, including further
definitions of types in the type system, modifying the semantic phase
for better type inference, and modification of the event block to have
typed args, and also further semantic checks for runtime type checking
for pfields.  Not very simple, but at least the possibilities are
there with what's developing with Csound 6.

Thanks!
steven

------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and
their applications. This 200-page book is written by three acclaimed
leaders in the field. The early access version is available now.
Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/csound-devel

------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and
their applications. This 200-page book is written by three acclaimed
leaders in the field. The early access version is available now.
Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/csound-devel



Date2013-05-08 22:33
FromSteven Yi
SubjectRe: [Cs-dev] Beyond Csound 6: Pure Orc Projects
Thanks all, I think there's a fair amount we can look into from here.
I don't know if/how these things will pan out, but thought it worth
putting out these ideas.

On Wed, May 8, 2013 at 10:13 PM, peiman khosravi
 wrote:
> Sounds amazing.
>
>
>
>
>
>
> www.peimankhosravi.co.uk || Subscribe to RSS Feed
>
> To receive emails about upcoming concerts visit this page & enter your email
> address in the 'follow' section.
>
>
>
> On 8 May 2013 18:43, Andres Cabrera  wrote:
>>
>> I think this is a very interesting notion Also, note generation in the
>> orchestra can also sync to tempo clocks or audio rate clocks.
>>
>> ( like sc, without the complexity...)
>>
>> Cheers,
>> Andres
>>
>> On May 7, 2013 3:16 PM, "Steven Yi"  wrote:
>>>
>>> Hi All,
>>>
>>> I had a thought yesterday regarding pure orc projects.  With event_i,
>>> we can essentially put in note statements within the orc instead of
>>> the score.  Approaching issues of score writing this way has some
>>> interesting possibilities. For one, as opcodes can take in arrays,
>>> event_i might be able to handle arrays more easily than modifying SCO
>>> statements.  Also, because of functional call syntax, we could imagine
>>> things like:
>>>
>>> event_i 1, 0, 2, [1,2,4,5]
>>> evt1:Event = event_i(1, 0, 2, [1, 2, 4 5])  ; assumes Event as a type
>>>
>>> If we can get opcodes as a type in the system, we can imagine:
>>>
>>> myFreq:Opcode = op(oscil, 2, 4)
>>> evt1:Event = event_i(1, 0, myFreq)
>>>
>>> and if we can get type inference working at a higher level, we could just
>>> have:
>>>
>>> myFreq = op(oscil, 2, 4)
>>> evt1 = event_i(1, 0, myFreq)
>>>
>>> This all would require a number of changes, including further
>>> definitions of types in the type system, modifying the semantic phase
>>> for better type inference, and modification of the event block to have
>>> typed args, and also further semantic checks for runtime type checking
>>> for pfields.  Not very simple, but at least the possibilities are
>>> there with what's developing with Csound 6.
>>>
>>> Thanks!
>>> steven
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Learn Graph Databases - Download FREE O'Reilly Book
>>> "Graph Databases" is the definitive new guide to graph databases and
>>> their applications. This 200-page book is written by three acclaimed
>>> leaders in the field. The early access version is available now.
>>> Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
>>> _______________________________________________
>>> Csound-devel mailing list
>>> Csound-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Learn Graph Databases - Download FREE O'Reilly Book
>> "Graph Databases" is the definitive new guide to graph databases and
>> their applications. This 200-page book is written by three acclaimed
>> leaders in the field. The early access version is available now.
>> Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
>> _______________________________________________
>> Csound-devel mailing list
>> Csound-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>>
>
>
> ------------------------------------------------------------------------------
> Learn Graph Databases - Download FREE O'Reilly Book
> "Graph Databases" is the definitive new guide to graph databases and
> their applications. This 200-page book is written by three acclaimed
> leaders in the field. The early access version is available now.
> Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel
>

------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and 
their applications. This 200-page book is written by three acclaimed 
leaders in the field. The early access version is available now. 
Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net