EditorDoc Sections Nuprl Doc
IF YOU CAN SEE THIS go to /sfa/Nuprl/Shared/Xindentation_hack_doc.html
There is a standard method for flexible entry and editing of dependent type operators in Constable's standard notation.
We'll use dependent function in this explanation.

Constable's notation for dependent function space is

x:AB(x),

with the special case of type independence notated
AB.

The command for inserting this operator is `>'.
Normally, insertion inserts <Type><Type> in left-mode, and [var]:<Type><Type> in right-mode, and replace-mode insertion inserts <Type><Type>.

But if the point is at an instance of ([var]:<type> ?), which is inserted by `:', left-mode insertion will build the dependent form using the typing indicated.
Furthermore, insertion with `:' is specialized in anticipation of this.
Examples: x:A<Type> can be created by entering
`x' `:' `A' `>' in a plain slot, or
`A' `>' or `>' `A' into the slot of x:<type> ?,

To get at the binding var position which is hidden in
AB, `(c-s)' will temporarily reveal the binding position, and will delete it if it is null.

It is easy to null-out the binding var position in a slot simply by using `(c-u){(tab)(return)}', which will then skip to the next slot if any.

About:
functionfunction
IF YOU CAN SEE THIS go to /sfa/Nuprl/Shared/Xindentation_hack_doc.html

EditorDoc Sections Nuprl Doc