# Perm

Jump to navigation
Jump to search

*This article is not detailed enough and needs to be expanded. Please help us by adding some more information.*

Perm is a language built around permutations. *For the moment, it is undecided whether this should be procedural or functional.*

This is a work in progress, and any help on filling in the blanks would be appreciated.

## Specification

### Basics

- Any decimal integer, n, computes the transposition (0 n)
- Therefore 0 is the identity permutation

- The . operator computes the product of the two operands
- ~ is the end-of-line comment delimiter

1.2.3 ~computes (0 1)*(0 2)*(0 3), or (0 1 2 3)

- The unary - computes the inverse of a permutation
- This means 1 == -1

- Parentheses can be used to group operations

-(1.2) ~computes the inverse of (0 1 2), or (0 2 1)

### Functions and Flow Control

TODO

### I/O

TODO