[CSOUND-DEV:4997] Opcode arg-types, Operators
| Date | 2004-07-15 19:44 |
| From | steven yi |
| Subject | [CSOUND-DEV:4997] Opcode arg-types, Operators |
Hi all,
Looking at entry1.c's documentation on argument types it seems there's a
few missing. Here's what I'm finding:
/* inarg types include the following:
m begins an indef list of iargs (any count)
M begins an indef list of args (any count and
rate) IV 2002/9/1
n begins an indef list of iargs (nargs odd)
o optional, defaulting to 0
p " " 1
q " " 10
v " " .5
j " " -1
h " " 127
y begins indef list of aargs (any count)
z begins indef list of kargs (any count)
Z begins alternating kakaka...list (any count)
outarg types include:
m multiple outargs (1 to 4 allowed)
(these types must agree with rdorch.c) */
For inarg-types that aren't listed (I've added descriptions for one's I
know, please correct if incorrect):
i - irate scalar
k - krate scalar
a - arate vector
x - krate scalar or arate vector
S - String
B -
l -
for out-arg types, i've found (again with my own descriptions):
i - irate scalar
k - krate scalar
a - arate vector
s -
r - reserved variable name (i.e. sr, kr, nchnls)
B -
I'm curious too as to what is the process for adding operators. I'm
assuming the B arg-type is involved but I am not confident I can explain
this clearly for documentation.
Any help clarifying this would be great appreciated (and will go into
documentation!)
Thanks,
steven
|
| Date | 2004-07-15 20:06 |
| From | Richard Dobson |
| Subject | [CSOUND-DEV:4998] Re: Opcode arg-types, Operators |
You can add "w" (spectral datatype) and "f" (streaming pvoc fsig type) to the list. These characters are for the most part (well, in Csound4 anyway - haven't looked at Csound5) somewhat buried in the code; so that programmers are required to bury new ones in the code too! I would guess that John's parser would collect them into a more readable/extensible centralized whaddayacallit. I had this dream that by means of some cunning re-programming we could eliminate the internal characters (i.e. ones not written by a Csound user in an opcode call), to free more up for signal types, but I think that escaped the cut for Csound5. Richard Dobson steven yi wrote: > Hi all, > > Looking at entry1.c's documentation on argument types it seems there's a > few missing. Here's what I'm finding: > > > /* inarg types include the following: > m begins an indef list of iargs (any count) > M begins an indef list of args (any count and > rate) IV 2002/9/1 > n begins an indef list of iargs (nargs odd) > o optional, defaulting to 0 > p " " 1 > q " " 10 > v " " .5 > j " " -1 > h " " 127 > y begins indef list of aargs (any count) > z begins indef list of kargs (any count) > Z begins alternating kakaka...list (any count) > outarg types include: > m multiple outargs (1 to 4 allowed) > (these types must agree with rdorch.c) */ > > > For inarg-types that aren't listed (I've added descriptions for one's I > know, please correct if incorrect): > > i - irate scalar > k - krate scalar > a - arate vector > x - krate scalar or arate vector > S - String > B - > l - > > for out-arg types, i've found (again with my own descriptions): > > i - irate scalar > k - krate scalar > a - arate vector > s - > r - reserved variable name (i.e. sr, kr, nchnls) > B - > > I'm curious too as to what is the process for adding operators. I'm > assuming the B arg-type is involved but I am not confident I can explain > this clearly for documentation. > > Any help clarifying this would be great appreciated (and will go into > documentation!) > > Thanks, > steven > > > |
| Date | 2004-07-15 20:16 |
| From | steven yi |
| Subject | [CSOUND-DEV:4999] Re: Opcode arg-types, Operators |
Richard Dobson wrote: > You can add "w" (spectral datatype) and "f" (streaming pvoc fsig type) > to the list. These characters are for the most part (well, in Csound4 > anyway - haven't looked at Csound5) somewhat buried in the code; so that > programmers are required to bury new ones in the code too! I would guess > that John's parser would collect them into a more readable/extensible > centralized whaddayacallit. I had this dream that by means of some > cunning re-programming we could eliminate the internal characters (i.e. > ones not written by a Csound user in an opcode call), to free more up > for signal types, but I think that escaped the cut for Csound5. > > Richard Dobson > > > steven yi wrote: > >> Hi all, >> >> Looking at entry1.c's documentation on argument types it seems there's >> a few missing. Here's what I'm finding: >> >> >> /* inarg types include the following: >> m begins an indef list of iargs (any count) >> M begins an indef list of args (any count and >> rate) IV 2002/9/1 >> n begins an indef list of iargs (nargs odd) >> o optional, defaulting to 0 >> p " " 1 >> q " " 10 >> v " " .5 >> j " " -1 >> h " " 127 >> y begins indef list of aargs (any count) >> z begins indef list of kargs (any count) >> Z begins alternating kakaka...list (any count) >> outarg types include: >> m multiple outargs (1 to 4 allowed) >> (these types must agree with rdorch.c) */ >> >> >> For inarg-types that aren't listed (I've added descriptions for one's >> I know, please correct if incorrect): >> >> i - irate scalar >> k - krate scalar >> a - arate vector >> x - krate scalar or arate vector >> S - String >> B - >> l - >> >> for out-arg types, i've found (again with my own descriptions): >> >> i - irate scalar >> k - krate scalar >> a - arate vector >> s - >> r - reserved variable name (i.e. sr, kr, nchnls) >> B - >> >> I'm curious too as to what is the process for adding operators. I'm >> assuming the B arg-type is involved but I am not confident I can >> explain this clearly for documentation. >> >> Any help clarifying this would be great appreciated (and will go into >> documentation!) >> >> Thanks, >> steven >> >> >> > > > |
| Date | 2004-07-15 20:34 |
| From | steven yi |
| Subject | [CSOUND-DEV:5002] Re: Opcode arg-types, Operators |
(sorry, accidentally sent the last one without a reply!) Thanks Richard for noting those arg-types! I'll add those to both the in-args and out-args lists and will update the csound.tex file probably sometime tonight after work. steven Richard Dobson wrote: > You can add "w" (spectral datatype) and "f" (streaming pvoc fsig type) > to the list. These characters are for the most part (well, in Csound4 > anyway - haven't looked at Csound5) somewhat buried in the code; so that > programmers are required to bury new ones in the code too! I would guess > that John's parser would collect them into a more readable/extensible > centralized whaddayacallit. I had this dream that by means of some > cunning re-programming we could eliminate the internal characters (i.e. > ones not written by a Csound user in an opcode call), to free more up > for signal types, but I think that escaped the cut for Csound5. > > Richard Dobson > > > steven yi wrote: > >> Hi all, >> >> Looking at entry1.c's documentation on argument types it seems there's >> a few missing. Here's what I'm finding: >> >> >> /* inarg types include the following: >> m begins an indef list of iargs (any count) >> M begins an indef list of args (any count and >> rate) IV 2002/9/1 >> n begins an indef list of iargs (nargs odd) >> o optional, defaulting to 0 >> p " " 1 >> q " " 10 >> v " " .5 >> j " " -1 >> h " " 127 >> y begins indef list of aargs (any count) >> z begins indef list of kargs (any count) >> Z begins alternating kakaka...list (any count) >> outarg types include: >> m multiple outargs (1 to 4 allowed) >> (these types must agree with rdorch.c) */ >> >> >> For inarg-types that aren't listed (I've added descriptions for one's >> I know, please correct if incorrect): >> >> i - irate scalar >> k - krate scalar >> a - arate vector >> x - krate scalar or arate vector >> S - String >> B - >> l - >> >> for out-arg types, i've found (again with my own descriptions): >> >> i - irate scalar >> k - krate scalar >> a - arate vector >> s - >> r - reserved variable name (i.e. sr, kr, nchnls) >> B - >> >> I'm curious too as to what is the process for adding operators. I'm >> assuming the B arg-type is involved but I am not confident I can >> explain this clearly for documentation. >> >> Any help clarifying this would be great appreciated (and will go into >> documentation!) >> >> Thanks, >> steven >> >> >> > > > |
| Date | 2004-07-16 00:08 |
| From | Anthony Kozar |
| Subject | [CSOUND-DEV:5004] Re: Opcode arg-types, Operators |
These really should be an array of some enumerated type. As long as we are replacing the parser, I don't see why we shouldn't change some things to use proper data structures instead of "hacks." That would go for the whole 0xffff, etc. thing as well. On 7/15/04 3:06 PM, Richard Dobson |