hi, after all the complaining, here is a list of features that are special to pd.
how things are done. and change things according to your needs
in pd. (the player is free also in max). but it also means that you don't have to fiddle around with the licence when you install (which usually takes a day) or that you licence can expire or that you will have to redo this when you buy new hardware.
a dot (for example in [/ 10.]) that also includes that you can create arithmetic operators without arguments. whereas in max the default is integer. which means you cannot just type [/].
abstraction itself which is more than annoying.
front. (max thinks, you want to save the subpatch as a seperate new patch...)
size and a fixed scale (0-199 - linear) (might be wrong with that).
a max toolbox, but that does not work reliable. unpack does not work for symbols in max. (but I am sure you can do that somehow else) diffs: two things that are different in max: [trigger 5 b] takes 5 as a number and not as a selector. when you bang it, even when you feed in another int, it will still output 5 and not zero as in pd. messages also remember their last value that you sent through them, so if you bang a message [$1 $2( it will spit out the last values and not 0 0. (only at the beginning as default)
...
m.
oh, forgot "find last error", even if this does not work all the time, it really helped me save a lot of time. plus "find" feature is also not implemented in max. marius.
marius schebella wrote:
hi, after all the complaining, here is a list of features that are special to pd.
- open source: you can always dig into the deep universe of code to see
how things are done. and change things according to your needs
- no licencing: that means you don't pay money to be allowed to program
in pd. (the player is free also in max). but it also means that you don't have to fiddle around with the licence when you install (which usually takes a day) or that you licence can expire or that you will have to redo this when you buy new hardware.
- no messing around with floats and ints. no mistakes because you forget
a dot (for example in [/ 10.]) that also includes that you can create arithmetic operators without arguments. whereas in max the default is integer. which means you cannot just type [/].
- possibility to edit abstractions! in max you always have to open the
abstraction itself which is more than annoying.
- possibility to save your patch with an open subpatch window in the
front. (max thinks, you want to save the subpatch as a seperate new patch...)
- no list object (ok, there is [zl reg])
- no [t a b]
- as far as I know no settable sliders. (slider 200 will have a fixed
size and a fixed scale (0-199 - linear) (might be wrong with that).
- no keyboard shortcuts to create objects/messages (ctl+1...). there is
a max toolbox, but that does not work reliable. unpack does not work for symbols in max. (but I am sure you can do that somehow else) diffs: two things that are different in max: [trigger 5 b] takes 5 as a number and not as a selector. when you bang it, even when you feed in another int, it will still output 5 and not zero as in pd. messages also remember their last value that you sent through them, so if you bang a message [$1 $2( it will spit out the last values and not 0 0. (only at the beginning as default)
- max does not run on linux
...
m.
On Thu, 6 Dec 2007, marius schebella wrote:
"find last error", even if this does not work all the time, it really helped me save a lot of time.
Btw, "find last error" in DesireData works pretty much all of the time.
In PureData, "find last error" relies on the good will of external (and internal) developers to use pd_error() instead of error(). In DesireData, pd_error() is obsolete and deprecated.
With a little more work, DesireData's "find last error" will be able to actually select all objects involved in the message chain leading to the error! e.g.:
[loadbang] | [tgl] | [metro 666] | [f] | [symbol]
would select the last three objects, because [metro]'s bang led to 0 which led to "no method for float". the start of the message chain is usually [metro], [delay], [gemhead] and other clock-driven classes (so [tgl] can't be found to be the ancestor of the error).
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada
On Thu, Dec 06, 2007 at 07:45:41PM -0500, marius schebella wrote:
- no licencing: that means you don't pay money to be allowed to program
in pd. (the player is free also in max). but it also means that you don't have to fiddle around with the licence when you install (which usually takes a day) or that you licence can expire or that you will have to redo this when you buy new hardware.
In fact, Pd has such a free license that you can even fork it and make your own closed-source commercial product out of it if you want. The only requirement is that you include the license and copyright.
Best,
Chris.
Chris McCormick wrote:
On Thu, Dec 06, 2007 at 07:45:41PM -0500, marius schebella wrote:
In fact, Pd has such a free license that you can even fork it and make your own closed-source commercial product out of it if you want. The only requirement is that you include the license and copyright.
and having a "free license" does not mean that it has "no licencing". a license is not the same as a license key or a license fee. instead it is a contract between the user and the owner of the code (or something like this)
fgmadsr IOhannes
How about a list of things that are special, and could be put into pd to
make it more special?
naming local variables with $0-xxx. But if I'm looking for all objects
with $0-xx, or all ocurrences of $4 in a patch, that won't work with
"find". Also using the specific-assigned number (e.g. 1024-xxx instead of
$0-xxx) won't do the trick.
ocurrences of INIT (which might be in several objects like sends,
receives, table~, etc.), it only looks for complete objects. I would have
to look for "s INIT", "r INIT", etc. etc.
objects) could have a shortcut to its counterparts like in max. I
personally avoid these kinds of objects as much as possible, but in some
situations they are the only viable sollution.
strange restrictions, when they're probably easy (?) to solve. What sense
is it in making 5 diferent text strings for a list with 5 items, that is
anyway supposed to look like one object?
4 outputs (or any other object), you'll need to make some garbage text or
something in order to work with it. since it is quite logical that when
the user needs outputs they should be acessible, an elegant solution would
be to assign a minimal value to the gap between outputs. if the standard
space of the object isn't big enough, the object will make itself bigger
automatically.
Although the stretching possibility in max is quite useful as well.
is there a place in the wiki or something to put suggestions like these?
after all the complaining, here is a list of features that are special to pd.
- open source: you can always dig into the deep universe of code to see
how things are done. and change things according to your needs
- no licencing: that means you don't pay money to be allowed to program
in pd. (the player is free also in max). but it also means that you don't have to fiddle around with the licence when you install (which usually takes a day) or that you licence can expire or that you will have to redo this when you buy new hardware.
- no messing around with floats and ints. no mistakes because you forget
a dot (for example in [/ 10.]) that also includes that you can create arithmetic operators without arguments. whereas in max the default is integer. which means you cannot just type [/].
- possibility to edit abstractions! in max you always have to open the
abstraction itself which is more than annoying.
- possibility to save your patch with an open subpatch window in the
front. (max thinks, you want to save the subpatch as a seperate new patch...)
- no list object (ok, there is [zl reg])
- no [t a b]
- as far as I know no settable sliders. (slider 200 will have a fixed
size and a fixed scale (0-199 - linear) (might be wrong with that).
- no keyboard shortcuts to create objects/messages (ctl+1...). there is
a max toolbox, but that does not work reliable. unpack does not work for symbols in max. (but I am sure you can do that somehow else) diffs: two things that are different in max: [trigger 5 b] takes 5 as a number and not as a selector. when you bang it, even when you feed in another int, it will still output 5 and not zero as in pd. messages also remember their last value that you sent through them, so if you bang a message [$1 $2( it will spit out the last values and not 0 0. (only at the beginning as default)
- max does not run on linux
...
m.
PD-list@iem.at mailing list UNSUBSCRIBE and account-management ->
http://lists.puredata.info/listinfo/pd-list
hi
João Miguel Pais wrote:
How about a list of things that are special, and could be put into pd to
make it more special?
- all objects based on "invisible cords" (sends- and receive-based
objects) could have a shortcut to its counterparts like in max. I
personally avoid these kinds of objects as much as possible, but in some
situations they are the only viable solution.
i though max/msp has send/receive too.
- auto-setting size for objects? if you have a gate object with more than
4 outputs (or any other object), you'll need to make some garbage text or
hmm; apart from the fact that [gate] does not exist as an object in Pd, i also thought that it has only one output...
something in order to work with it. since it is quite logical that when
the user needs outputs they should be acessible, an elegant solution would
be to assign a minimal value to the gap between outputs. if the standard
space of the object isn't big enough, the object will make itself bigger
automatically. Although the stretching possibility in max is quite useful as well.
afaik, max/msp has both: the object automatically resizes to a suitable default, but the user can then resize the object to their likings.
is there a place in the wiki or something to put suggestions like these?
one place to put them would be the tracker at sourceforge (create a bug-report and tag it as "wishlist" or "feature request").
btw, i like all of your ideas
fma.s IOhannes
Hi IOhannes~
I think that João means that in Max/MSP you can somehow click on a send or receive object and automatically view the corresponding receive or send. I don't have Max so I don't know if this is accurate. It sounds awesome though!
~Kyle
On Dec 7, 2007 10:50 AM, IOhannes m zmoelnig zmoelnig@iem.at wrote:
hi
João Miguel Pais wrote:
- all objects based on "invisible cords" (sends- and receive-based
objects) could have a shortcut to its counterparts like in max. I personally avoid these kinds of objects as much as possible, but in some situations they are the only viable solution.
i though max/msp has send/receive too.
How about a list of things that are special, and could be put into pd
to make it more special?
- all objects based on "invisible cords" (sends- and receive-based
objects) could have a shortcut to its counterparts like in max. I
personally avoid these kinds of objects as much as possible, but in
some situations they are the only viable solution.i though max/msp has send/receive too.
I meant what was commented after by Kyle. In max if you right-click (or
something) on a send (or send~, receive~, or maybe also in catch~?),
you'll get a list of the counterparts of that object. and if you click on
them, the patch window will appear. (I haven't used max in a while, I
think it was that way)
- auto-setting size for objects? if you have a gate object with more
than 4 outputs (or any other object), you'll need to make some garbage
text orhmm; apart from the fact that [gate] does not exist as an object in Pd,
i also thought that it has only one output...
it exists, I'm looking at one now. if not gate, then something else with
more outputs as body.
something in order to work with it. since it is quite logical that
when the user needs outputs they should be acessible, an elegant
solution would be to assign a minimal value to the gap between
outputs. if the standard space of the object isn't big enough, the
object will make itself bigger automatically. Although the stretching possibility in max is quite useful as well.afaik, max/msp has both: the object automatically resizes to a suitable
default, but the user can then resize the object to their likings.
ah, ok. it would make sense to put it like that in pd as well.
is there a place in the wiki or something to put suggestions like
these?one place to put them would be the tracker at sourceforge (create a
bug-report and tag it as "wishlist" or "feature request").btw, i like all of your ideas
they're not all mine, most of this mail were from max itself. but they're
good ideas anyway.
On Sat, 2007-12-08 at 02:22 +0100, João Miguel Pais wrote:
- auto-setting size for objects? if you have a gate object with more
than 4 outputs (or any other object), you'll need to make some garbage
text orhmm; apart from the fact that [gate] does not exist as an object in Pd,
i also thought that it has only one output...it exists, I'm looking at one now. if not gate, then something else with
more outputs as body.
no, there is no objectclass called 'gate' as part of pd yes, there is an objectclass 'gate' as part of the cyclone and one as part of iemlib1 external
roman
___________________________________________________________ Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de
There is the GuiIdeas wiki page, for other things, feel free to add
pages.
.hc
On Dec 7, 2007, at 6:21 AM, João Miguel Pais wrote:
How about a list of things that are special, and could be put into
pd to make it more special?
- "Find" should work with symbol-text strings. Pd has the great
feature of naming local variables with $0-xxx. But if I'm looking for all objects with $0-xx, or all ocurrences of $4 in a patch, that won't work with "find". Also using the specific-assigned number (e.g. 1024-xxx
instead of $0-xxx) won't do the trick.
- "Find" doesn't work with partial strings. If I'm looking for all
ocurrences of INIT (which might be in several objects like sends, receives, table~, etc.), it only looks for complete objects. I
would have to look for "s INIT", "r INIT", etc. etc.
- all objects based on "invisible cords" (sends- and receive-based
objects) could have a shortcut to its counterparts like in max. I personally avoid these kinds of objects as much as possible, but in
some situations they are the only viable sollution.
- Comments with line breaks. It's funny how people get used to some
strange restrictions, when they're probably easy (?) to solve. What
sense is it in making 5 diferent text strings for a list with 5 items,
that is anyway supposed to look like one object?
- auto-setting size for objects? if you have a gate object with
more than 4 outputs (or any other object), you'll need to make some garbage
text or something in order to work with it. since it is quite logical that
when the user needs outputs they should be acessible, an elegant
solution would be to assign a minimal value to the gap between outputs. if the
standard space of the object isn't big enough, the object will make itself
bigger automatically. Although the stretching possibility in max is quite useful as well.is there a place in the wiki or something to put suggestions like
these?after all the complaining, here is a list of features that are
special to pd.
- open source: you can always dig into the deep universe of code
to see how things are done. and change things according to your needs
- no licencing: that means you don't pay money to be allowed to
program in pd. (the player is free also in max). but it also means that you don't have to fiddle around with the licence when you install (which usually takes a day) or that you licence can expire or that you will have to redo this when you buy new hardware.
- no messing around with floats and ints. no mistakes because you
forget a dot (for example in [/ 10.]) that also includes that you can create arithmetic operators without arguments. whereas in max the default is integer. which means you cannot just type [/].
- possibility to edit abstractions! in max you always have to open
the abstraction itself which is more than annoying.
- possibility to save your patch with an open subpatch window in the
front. (max thinks, you want to save the subpatch as a seperate new patch...)
- no list object (ok, there is [zl reg])
- no [t a b]
- as far as I know no settable sliders. (slider 200 will have a fixed
size and a fixed scale (0-199 - linear) (might be wrong with that).
- no keyboard shortcuts to create objects/messages (ctl+1...).
there is a max toolbox, but that does not work reliable. unpack does not work for symbols in max. (but I am sure you can do
that somehow else) diffs: two things that are different in max: [trigger 5 b] takes 5
as a number and not as a selector. when you bang it, even when you feed in another int, it will still output 5 and not zero as in pd. messages also remember their last value that you sent through
them, so if you bang a message [$1 $2( it will spit out the last values and
not 0 0. (only at the beginning as default)
- max does not run on linux
...
m.
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
-- Friedenstr. 58 10249 Berlin Deutschland Tel +49 30 42020091 Mob +49 162 6843570 jmmmpais@googlemail.com skype: jmmmpjmmmp http://www.puredata.org/Members/jmmmp IBM Thinkpad R51, XP, Pd-Ext-0.39-2-t5, Pd Van 0.40-t2
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/ listinfo/pd-list
kill your television