Csound Csound-dev Csound-tekno Search About

Re: [Cs-dev] more than one string in an i-statement

Date2007-04-27 16:17
FromMichael Gogins
SubjectRe: [Cs-dev] more than one string in an i-statement
Why? We have tons of dependencies already, and boost is pretty standard for C++ development now.

Regards,
Mike

-----Original Message-----
>From: Victor Lazzarini 
>Sent: Apr 27, 2007 11:13 AM
>To: Developer discussions 
>Subject: Re: [Cs-dev] more than one string in an i-statement
>
>I would be against introducing a dependency on Boost to the
>csound core.
>
>Victor
>
>At 16:07 27/04/2007, you wrote:
>>Better yet, the pfields should be variants; each pfield should be allowed 
>>to be any one of a predefined set of types that would at least include 
>>int, real, boolean, string. I would not want to get too fancy with this!
>>
>>boost::any provides an efficient, easy to use encapsulation of this kind 
>>of facility in C++, which is another argument for moving the Csound 
>>internals from C to C++. I don't want to wait around for weeks or months 
>>while people hammer out some implementation in C of what already works 
>>perfectly in C++.
>>
>>Regards,
>>Mike
>>
>>-----Original Message-----
>> >From: Victor Lazzarini 
>> >Sent: Apr 27, 2007 4:40 AM
>> >To: Developer discussions 
>> >Subject: Re: [Cs-dev] more than one string in an i-statement
>> >
>> >I think we should have a plan for a change in the API. Perhaps we
>> >should wait for other changes before doing, so they are all done
>> >in one go. So, for now, we don't do anything, but add this to a list
>> >of future API changes. When that list is big enough or there is a
>> >good reason for modifying the API, then we will do it.
>> >
>> >
>> >At 02:42 27/04/2007, you wrote:
>> >>Please keep in mind that if you change the EVTBLK structure to allow for
>> >>more than one string, then you will also need to change the EVENT structure
>> >>in cscore.h which is part of the Cscore API.  This will be an incompatible
>> >>change to the API (our first) and will require the API version number to be
>> >>increased to 2.0.  Increasing the API major version will require all host
>> >>applications that dynamically link to Csound to be recompiled even though
>> >>this change will likely not affect them.  Existing user cscore programs 
>> will
>> >>all need to be recompiled and will likely crash if they are loaded with the
>> >>new library.
>> >>
>> >>None of this means that we should not make this improvement.  But these are
>> >>the consequences of this particular change unless you can think of a way to
>> >>avoid changing EVTBLK.
>> >>
>> >>If you do change EVTBLK, I would suggest that we do away with the "magic
>> >>number" (*) for indicating a string p-field and instead have an array of
>> >>bools.  I have not yet been able to cause anything really bad to happen 
>> as a
>> >>result of this hack but the CSD below certainly could be considered to
>> >>behave a little "strangely".
>> >>
>> >>Also, I don't know if we can save space by using a union { char * ; MYFLT }
>> >>for each p-field but that may not be a good idea either if it changes how
>> >>Cscore users access p-fields from their code.
>> >>
>> >>Anthony
>> >>
>> >>
>> >>
>> >>sr      = 10
>> >>kr      = 10
>> >>
>> >>instr 1
>> >>         print   p4
>> >>   ifile fiopen  p4, 1
>> >>endin
>> >>
>> >>
>> >>
>> >>
>> >>i1 0 1 "test string"
>> >>i1 1 1 3945467
>> >>e
>> >>
>> >>
>> >>
>> >>
>> >>* By the way, did the magic number (SSTRCOD) change between Csound 4 & 5 or
>> >>has it changed since Csound 5.00 was released?  I thought that it used 
>> to be
>> >>1048576 and it is now 3945467.  Am I confused?
>> >>
>> >>Victor Lazzarini wrote on 4/26/07 11:35 AM:
>> >>
>> >> > Yes, more than one string in an i-statement should be enabled,
>> >> > that should be one of the items in the to-do list. At the moment the 
>> data
>> >> > structure that holds i-statements has only one slot for strings, so
>> >> > I suppose that's where we should start.
>> >>
>> >>
>> >>-------------------------------------------------------------------------
>> >>This SF.net email is sponsored by DB2 Express
>> >>Download DB2 Express C - the FREE version of DB2 express and take
>> >>control of your XML. No limits. Just data. Click to get it now.
>> >>http://sourceforge.net/powerbar/db2/
>> >>_______________________________________________
>> >>Csound-devel mailing list
>> >>Csound-devel@lists.sourceforge.net
>> >>https://lists.sourceforge.net/lists/listinfo/csound-devel
>> >
>> >Victor Lazzarini
>> >Music Technology Laboratory
>> >Music Department
>> >National University of Ireland, Maynooth
>> >
>> >
>> >-------------------------------------------------------------------------
>> >This SF.net email is sponsored by DB2 Express
>> >Download DB2 Express C - the FREE version of DB2 express and take
>> >control of your XML. No limits. Just data. Click to get it now.
>> >http://sourceforge.net/powerbar/db2/
>> >_______________________________________________
>> >Csound-devel mailing list
>> >Csound-devel@lists.sourceforge.net
>> >https://lists.sourceforge.net/lists/listinfo/csound-devel
>>
>>
>>
>>
>>-------------------------------------------------------------------------
>>This SF.net email is sponsored by DB2 Express
>>Download DB2 Express C - the FREE version of DB2 express and take
>>control of your XML. No limits. Just data. Click to get it now.
>>http://sourceforge.net/powerbar/db2/
>>_______________________________________________
>>Csound-devel mailing list
>>Csound-devel@lists.sourceforge.net
>>https://lists.sourceforge.net/lists/listinfo/csound-devel
>
>Victor Lazzarini
>Music Technology Laboratory
>Music Department
>National University of Ireland, Maynooth
>
>
>-------------------------------------------------------------------------
>This SF.net email is sponsored by DB2 Express
>Download DB2 Express C - the FREE version of DB2 express and take
>control of your XML. No limits. Just data. Click to get it now.
>http://sourceforge.net/powerbar/db2/
>_______________________________________________
>Csound-devel mailing list
>Csound-devel@lists.sourceforge.net
>https://lists.sourceforge.net/lists/listinfo/csound-devel




-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2007-04-27 19:19
FromAnthony Kozar
SubjectRe: [Cs-dev] more than one string in an i-statement
On MacOS 9, I have so far been unable to compile anything requiring Boost.
(And I have tried to introduce OS 9 compatibility to some modules ...)

Anthony

Michael Gogins wrote on 4/27/07 11:17 AM:

> Why? We have tons of dependencies already, and boost is pretty standard for
> C++ development now.
> 
> Regards,
> Mike
> 
> -----Original Message-----
>> From: Victor Lazzarini 
>> Sent: Apr 27, 2007 11:13 AM
>> To: Developer discussions 
>> Subject: Re: [Cs-dev] more than one string in an i-statement
>> 
>> I would be against introducing a dependency on Boost to the
>> csound core.


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net