Personal tools
You are here: Home development HansDataTypeDefinitions
Views

Here are my attempts at defining Pd's data types. I do not attempt to define "bang" or "pointer" since I think the current definitions are clear enough.

Basic Data Types

These are the basic data types of Pd. Each one has a distinct behavior and therefore should be classified as a distinct type so that people can clearly talk about what's happening in a Pd program.

atom
the most basic unit of data in a message. They are usually delineated by white space.
numeric atom
any element which is a functional representation of a number. In Pd, a numeric atom is the same as a float, they can be used interchangeably.
symbolic atom
any atom which is not a functional representation of a number, usually in the form of words
pointer atom
a position pointer to a struct
signal
numeric data processed at the audio rate
gemlist
numeric data processed at the message rate used between Gem objects.
pdp packet
numeric data processed at the message rate used between PDP objects.
gridflow grid
a matrix of data

Messages

Messages are any series of atoms passed to an object. Every message has a "selector" followed by any number of arguments.

selector
The selector is a symbolic atom, which is a non-numeric string with no white space, semicolons, or commas. In the case of messages whose first element is a numeric atom, the selector is implied.

Data Structures

These structures are made up from the basic data types. They can be broken down into elements of the above types.

bang
a bang is any message that has a selector "bang".
float
a float is a two atom series where the first atom is the "float" selector and the second atom is a numeric atom. Can be used interchangeably with messages that are just a numeric atom.
symbol
a symbol is a two atom series where the first element is the "symbol" selector and the second element is a symbolic atom. Any series with a selector of "symbol" with more than two atom is automatically converted to a symbol by truncating all other atom except the "symbol" selector and the second atom.
comma
a comma has a special meaning in Pd, therefore its also an atom
semi-colon
a semi-colon has a special meaning in Pd, therefore its also an atom
dollar
don't know how to define this
dollarg
don't know how to define this
list
a series of 2 or more atoms whose first atom is either the selector "list", or a numeric atom, which causes the "list" selector to be implied. A 0-atom list is a bang, a 1-atoms list is either a float or a symbol. Are there any exceptions where a 0- or 1-element lists actually exists? I suppose only in a message box.
selector series
a series of 2 or more elements whose first atom is neither the selector "list" nor a numeric atom.
array
an array is a series of numeric atoms with a graphical representation
struct
an



Powered by IEM Powered by Plone Section 508 WCAG Valid XHTML Valid CSS Usable in any browser