Csound Csound-dev Csound-tekno Search About

[CSOUND-DEV:3418] Re: Csound API Split, design

Date2003-11-19 20:30
From"gogins@pipeline.com"
Subject[CSOUND-DEV:3418] Re: Csound API Split, design
I have looked at csdl.h. I wondered why somebody would want to do this
instead of defining a simple C++ class. Doing the sort of thing that csdl.h
does is exactly why C++ was invented. 

These macros have caused me problems when I have tried to access data
members of GLOBALS or call internal Csound functions in contexts where
csdl.h or csound.h have been included. Of course, it would have been wiser
of me to add a new API function than to try to access members of GLOBALS
directly. But this still shows the kinds of problems that such macros will
cause.

Original Message:
-----------------
From: John ffitch jpff@cs.bath.ac.uk
Date: Wed, 19 Nov 2003 20:00:41 +0000 (GMT)
To: csound-dev@eartha.mills.edu
Subject: [CSOUND-DEV:3414] Re: Csound API Split, design


Have you looked at csdl.h ?


--------------------------------------------------------------------
mail2web - Check your email from the web at
http://mail2web.com/ .

Date2003-11-19 20:44
FromJohn ffitch
Subject[CSOUND-DEV:3419] Re: Csound API Split, design
I totally disagree.  I dislike C++ because I cannot understand what it is 
doing.  A C macro is just a textual structure -- OK a LISP macro is nicer 
-- but it allowed the convertion of many opcode to loadable without 
changing the code, and moving back when there were problems.
==John

Date2003-11-20 01:27
FromChris McCormick
Subject[CSOUND-DEV:3429] Re: Csound API Split, design
AttachmentsNone  

Date2003-11-20 06:39
FromJohn ffitch
Subject[CSOUND-DEV:3432] Re: Csound API Split, design
I have taught C++, read C++, last program I wrote was written in C++.  I 
do not like C++.changing the PLOTLEN in your code, but not 
  How good is your LISP?

Date2003-11-20 06:58
FromChris McCormick
Subject[CSOUND-DEV:3433] Re: Csound API Split, design
AttachmentsNone  

Date2003-11-20 10:19
FromRichard Dobson
Subject[CSOUND-DEV:3435] Re: Csound API Split, design
I think John meant, as I would mean, that reading other people's C++ 
programs (especially if abstrusely engaged with templates and other 
arcania), is like dancing in the dark on the edge of a cliff.

Most of the time, a C program is reasonably easy to read - even 
Csound's. But reading someone else's C++ (where by definition so much is 
hidden) is a nightmare. It is all but impossible to find out what it is 
doing. You have to spend hours studying all the derivations, 
inheritances, templates of templates and whatnot. It can be even worse 
than dealing with global variables.    People object to COM for just 
these reasons, though that is in many ways the apotheosis of C++. I like 
~simple~ C++, and write simple C++, but most people don't write simple 
C++. And it can get really complicated really quickly! Overload one 
function, and you suddenly have to worry about type-this, operator-that, 
"prevent the programmer from doing this", throw a thousand distinct 
exceptions; and so many people still allocate memory or load files in 
constructors.

I took a look at that notorious attempt to convert Csound to C++. It was 
immediately obvious that it would be horribly difficult to add the 
sreaming pvoc opcodes to it, without breaking some obscure but vital 
aspect of the "design". I wouldn't even have known where to start, and 
the suspicion remains that it was, in fact, impossible. The author, of 
course, understands it perfectly and can't understand why other people 
don't.



Richard Dobson






Chris McCormick wrote:
> On Thu, Nov 20, 2003 at 06:39:51AM +0000, John ffitch wrote:
> 
>>I have taught C++, read C++, last program I wrote was written in C++.  I 
>>do not like C++.changing the PLOTLEN in your code, but not 
>>  How good is your LISP?
> 
> 
> Terrible. I have written about 30 lines of code in lisp in my life.
> 
> Perhaps I misunderstood what you were saying, John. I don't have the
> original mail, but I thought you said that you don't like C++ because
> you don't know what it is doing. My point is that you should find out
> what it is doing before you decide whether you like it or not. I mean
> no disrespect whatsoever.
> 
> Regards,
> 
> Chris.
> _________________________________
> chris@mccormick.cx
> http://www.mccormick.cx
> http://www.hypercube.com.au
> http://www.sciencegirlrecords.com
> 
> 

Date2003-11-20 12:43
Fromramsdell@mitre.org (John D. Ramsdell)
Subject[CSOUND-DEV:3436] Re: Csound API Split, design
A former Sun employee now working at my company told me that while he
was at Sun, they adopted a policy that strongly discouraged defining
library interfaces using C++.  He said they were having versioning
problems, which resulted in calls to non-existent methods in some
configurations.  The problems he relayed remind me of what happens on
Windows sometimes.  My friend said the use of C++ to implement
interfaces defined in C was not discouraged.  Of course, Microsoft
seems to define most of their interfaces using C++, so go figure.

John

Date2003-11-21 16:43
From"Josep M Comajuncosas Nebot"
Subject[CSOUND-DEV:3456] Re: Csound API Split, design
By the way, I'd really love some doccumentation in order to understand
how Csound really works. Drawings, schemes, use cases...whatever.
Something more detailed than the current Csound Book.
Something to give you enough information to feel capable of trying
something in that line by yourself ;-)

Josep M Comajuncosas

-----Mensaje original-----
De: owner-csound-dev@eartha.mills.edu
[mailto:owner-csound-dev@eartha.mills.edu] En nombre de Richard Dobson
Enviado el: jueves, 20 de noviembre de 2003 11:20
Para: Csound Developers Discussion List
Asunto: [CSOUND-DEV:3435] Re: Csound API Split, design

Most of the time, a C program is reasonably easy to read - even 
Csound's. 
(...)

The author, of 
course, understands it perfectly and can't understand why other people 
don't.
 

Date2003-11-23 17:29
From"Dr. Richard Boulanger"
Subject[CSOUND-DEV:3467] FW: Re: Csound API Split, design
Steven, John, Michael, Matt, Gabriel, ???

We would ALL love to see something like this.  Maybe in the developer's
section of cSounds.com

Dr. B.
_______________________________________________________________________
 +  Dr. Richard Boulanger, Professor
 +  Music Synthesis Department, Berklee College of Music
 +  1140 Boylston Street  - Boston, MA  02215-3693
 +  Office Phone: (617) 747-2485   Office Fax: (617) 747-2564
 +  eMail: rboulanger@csounds.com  or  rboulanger@berklee.edu
 +  WebPage: http://csounds.com/boulanger/
________________________________________________________________________
 +  Almost Everything Csound @ http://csounds.com/
 +  The Csound Catalog with Audio @ http://csounds.com/catalog/
 +  The Csound Book @ http://csounds.com/book/
 +  The Csound Magazine @ http://csounds.com/ezine/
 +  CsoundMAXv2  @ http://csounds.com/csoundmax2/
 +  CsoundForums @ http://csounds.com/phpBB2/
________________________________________________________________________

------ Forwarded Message
> From: "Josep M Comajuncosas Nebot" 
> Reply-To: csound-dev@ella.mills.edu
> Date: Fri, 21 Nov 2003 17:43:44 +0100
> To: Csound Developers Discussion List 
> Subject: [CSOUND-DEV:3456] Re: Csound API Split, design
> 
> By the way, I'd really love some doccumentation in order to understand
> how Csound really works. Drawings, schemes, use cases...whatever.
> Something more detailed than the current Csound Book.
> Something to give you enough information to feel capable of trying
> something in that line by yourself ;-)
> 
> Josep M Comajuncosas
> 
> -----Mensaje original-----
> De: owner-csound-dev@eartha.mills.edu
> [mailto:owner-csound-dev@eartha.mills.edu] En nombre de Richard Dobson
> Enviado el: jueves, 20 de noviembre de 2003 11:20
> Para: Csound Developers Discussion List
> Asunto: [CSOUND-DEV:3435] Re: Csound API Split, design
> 
> Most of the time, a C program is reasonably easy to read - even
> Csound's. 
> (...)
> 
> The author, of 
> course, understands it perfectly and can't understand why other people
> don't.
> 
> 
> 

------ End of Forwarded Message