Differences between revisions 7 and 8
Revision 7 as of 2009-06-21 15:55:27
Size: 4575
Editor: anonymous
Comment:
Revision 8 as of 2009-06-23 11:15:20
Size: 5049
Editor: anonymous
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
Please have a glance at:
 http://en.wikipedia.org/wiki/APL_(programming_language)#APL_Glossary
== Suggestion ==
 0. Could you perhaps include the term 'valence' when discussing function signatures?
  . done! - see below but please, Ajay, feel free to add or amend at will.
 0. The WIKIPEDIA reference mentions 'nomadic': have I missed something all these years?
  . so does this - see below; used by APLX for ambivalent.

The wikipedia table has kilobytes of critcism on its Discussion page, is inconsistent, grammatically incorrect and should be replaced or removed.

The following is my suggestion for its replacement. It (preferably a better version) could be copied to wikipedia or the existing table could just be replaced with a link back here after we get it right.

Please criticise it (the table below) mercilessly, add, amend, delete and let's get a consensus. Don't be frightened, you can hit [Preview] as many times as you like to get it right and you can always [Cancel] before [Save Changes] if you think you've messed it up.

Try to keep it as far as possible that terms used in a description are defined previously in the table. Try to keep it short enough that it doesn't attract criticism from others that we've just copied the language reference. Oh, and I think it'd be better left without examples.
I've assumed: 'object', 'parameter', 'operation', 'assignment' & 'data' as being terms whose general meanings don't differ sufficiently across most computer languages to require a definition here.

Over and out!
-- PhilLast <<DateTime(2009-06-11T17:45:40Z)>>
<<TableOfContents>>
----
↓↓↓↓ Discussion moved to bottom ↓↓↓↓
----
 APL literature includes many terms describing the language whose meanings are rigorously defined but might have slightly different meanings in APL than elsewhere either by being more or less specific. This list is not exhaustive but is intended to cover the most important of them.
Line 23: Line 9:
----
Line 30: Line 15:
||variable||named array||
Line 34: Line 20:
||niladic||accepting no arguments||
||monadic||accepting or requiring one argument or operand||
||monadic
||(of a function) having its only argument on the right||
||monadic||(of an operator) having its only operand on the left||
||dyadic||accepting or requiring two arguments or operands||
||dyadic
||(of a function) having two arguments: left & right||
||dyadic||(of an operator) having two operands: left & right||
||niladic||accepting no arguments; having valence zero||
||monadic||accepting or requiring one argument or operand; having valence one||
||
||(of a function) having its only argument on the right||
|| ||(of an operator) having its only operand on the left||
||dyadic||accepting or requiring two arguments or operands; having valence two||
||
||(of a function) having two arguments: left & right||
|| ||(of an operator) having two operands: left & right||
Line 48: Line 34:
||rank||(of a function) rank of arguments to which it applies||
||scalar||pertaining to rank zero||
|| ||(of a function) ranks of arguments to which it applies||
Line 51: Line 36:
||scalar||(of a function) applying to scalars||
||vector||pertaining to rank one||
|| ||(of a function) applying to scalars||
Line 54: Line 38:
||vector||(of a function) applying to vectors||
||matrix||pertaining to rank two||
|| ||(of a function) applying to vectors||
Line 57: Line 40:
||matrix||(of a function) applying to matrices|| || ||(of a function) applying to matrices||
Line 59: Line 42:
||simple||(of an array) composed entirely of simple scalars|| || ||(of an array) composed entirely of simple scalars||
Line 64: Line 47:
||noun||alternative term for array||
||verb||alternative term for function||
||adverb||alternative term for monadic operator||
||conjunction||alternative term for dyadic operator||
----
== Discussion ==
Please have a glance at:
 http://en.wikipedia.org/wiki/APL_(programming_language)#APL_Glossary
=== intro ===
The wikipedia table has kilobytes of criticism on its Discussion page, is inconsistent, ungrammatical and should be replaced or removed.

The following (preferably a better version) could be copied to wikipedia or the existing table could just be replaced with a link back here after we get it right.

Please criticise it (the table above) mercilessly, add, amend, delete and let's get a consensus. Don't be frightened, you can hit [Preview] as many times as you like to get it right and you can always [Cancel] before [Save Changes] if you think you've messed it up.

Try to keep it as far as possible that terms used in a description are defined previously in the table. Try to keep it short enough that it doesn't attract criticism from others that we've just copied the language reference. Oh, and I think it'd be better left without examples.
I've assumed: 'object', 'parameter', 'operation', 'assignment' & 'data' as being terms whose general meanings don't differ sufficiently across most computer languages to require a definition here.

Over and out!
-- PhilLast <<DateTime(2009-06-11T17:45:40Z)>>
=== Suggestion ===
 0. Could you perhaps include the term 'valence' when discussing function signatures?
  . done! - see above but please, Ajay, feel free to add or amend at will.
 0. The WIKIPEDIA reference mentions 'nomadic': have I missed something all these years?
  . so does this - see above; used by APLX for ambivalent.

Glossary Of Apl Terms


↓↓↓↓ Discussion moved to bottom ↓↓↓↓


  • APL literature includes many terms describing the language whose meanings are rigorously defined but might have slightly different meanings in APL than elsewhere either by being more or less specific. This list is not exhaustive but is intended to cover the most important of them.


APL Glossary

Term

Description

primitive

native to the language and referenced as a single character

defined

created by lexical definition by direct assignment or in an editor

derived

created by juxtaposition as a combination of more than one previously existing operation

argument

object passed as parameter to an operation

array

data valued object of zero or more orthogonal dimensions in which each item is a number, a character or another array

variable

named array

function

primitive, defined or derived operation that takes zero, one or two array valued arguments and may return an array valued result

operator

primitive or defined operation that takes one or two function or array valued arguments (operands) and derives a function result

operand

more specific name for argument when applied to those of an operator

valence

degree or number of arguments or operands of an operation

niladic

accepting no arguments; having valence zero

monadic

accepting or requiring one argument or operand; having valence one

(of a function) having its only argument on the right

(of an operator) having its only operand on the left

dyadic

accepting or requiring two arguments or operands; having valence two

(of a function) having two arguments: left & right

(of an operator) having two operands: left & right

ambivalent

capable of monadic or dyadic behaviour

nomadic

used by some APLs as a synonym for 'ambivalent'

shape

(of an array) length of each dimension

type

(of an array) array of identical structure in which all numbers are zero and all characters are blanks

prototype

(of an array) the type of its first item

empty

(of an array) having one or more dimensions of length zero

rank

(of an array) number of dimensions

(of a function) ranks of arguments to which it applies

scalar

(of an array) having zero dimensions

(of a function) applying to scalars

vector

(of an array) having one dimension

(of a function) applying to vectors

matrix

(of an array) having two dimensions

(of a function) applying to matrices

simple

(of a scalar) a single character or number

(of an array) composed entirely of simple scalars

nested

(of an array) having one or more items or a prototype which is not a simple scalar

depth

(of an array) the number of levels of nesting where an item or prototype is other than a simple scalar

strand

lexical juxtaposition of array valued names or expressions to form a larger, possibly nested, array

workspace

area of computer memory containing arrays and defined &/or derived operations or a file containing a preserved binary image of such

noun

alternative term for array

verb

alternative term for function

adverb

alternative term for monadic operator

conjunction

alternative term for dyadic operator


Discussion

Please have a glance at:

intro

The wikipedia table has kilobytes of criticism on its Discussion page, is inconsistent, ungrammatical and should be replaced or removed.

The following (preferably a better version) could be copied to wikipedia or the existing table could just be replaced with a link back here after we get it right.

Please criticise it (the table above) mercilessly, add, amend, delete and let's get a consensus. Don't be frightened, you can hit [Preview] as many times as you like to get it right and you can always [Cancel] before [Save Changes] if you think you've messed it up.

Try to keep it as far as possible that terms used in a description are defined previously in the table. Try to keep it short enough that it doesn't attract criticism from others that we've just copied the language reference. Oh, and I think it'd be better left without examples. I've assumed: 'object', 'parameter', 'operation', 'assignment' & 'data' as being terms whose general meanings don't differ sufficiently across most computer languages to require a definition here.

Over and out! -- PhilLast 2009-06-11 17:45:40

Suggestion

  1. Could you perhaps include the term 'valence' when discussing function signatures?
    • done! - see above but please, Ajay, feel free to add or amend at will.
  2. The WIKIPEDIA reference mentions 'nomadic': have I missed something all these years?
    • so does this - see above; used by APLX for ambivalent.


CategoryAboutApl

GlossaryOfAplTerms (last edited 2015-02-24 10:48:36 by anonymous)