# Difference between revisions of "Compose"

From NARS2000

Jump to navigationJump to searchSudleyplace (talk | contribs) |
|||

Line 17: | Line 17: | ||

* The derived function from the form <apll><i>a</i>∘<i>b</i></apll> always signals a <apll>SYNTAX ERROR</apll>. | * The derived function from the form <apll><i>a</i>∘<i>b</i></apll> always signals a <apll>SYNTAX ERROR</apll>. | ||

− | + | ||

Compose can be useful for function assignment (but enclosing parentheses are necessary). | Compose can be useful for function assignment (but enclosing parentheses are necessary). | ||

− | + | ||

− | For example< | + | For example |

− | < | + | |

− | + | <apll><pre> | |

− | + | p1←(1∘+¯2∘π) ⍝ 1 more than the Nth prime number | |

+ | p1 ⍳9 | ||

3 4 6 8 12 14 18 20 24 | 3 4 6 8 12 14 18 20 24 | ||

− | </apll> | + | </pre></apll> |

## Revision as of 23:44, 15 April 2018

In the following descriptions, *f* and *g* represent functions and *a* and *b* represent variables.

- The form
*f*∘*g*may be used both monadically and dyadically.

- Monadic: Z←
*f*∘*g*R is identical to Z←*f**g*R. - Dyadic: Z←L
*f*∘*g*R is identical to Z←L*f**g*R.

- The form
*f*∘b may be used monadically only.

- Monadic: Z←(
*f*∘*b*) R is identical to Z←R*f b*. - Note that parentheses are required around the function to avoid interpreting
*b*R as a strand.

- The form
*a*∘*g*may be used monadically only.

- Monadic: Z←
*a*∘*g*R is identical to Z←*a g*R.

- The derived function from the form
*a*∘*b*always signals a SYNTAX ERROR.

Compose can be useful for function assignment (but enclosing parentheses are necessary).

For example

p1←(1∘+¯2∘π) ⍝ 1 more than the Nth prime number p1 ⍳9 3 4 6 8 12 14 18 20 24