Annotation of researchv8dc/cmd/hoc/hoc.1, revision 1.1

1.1     ! root        1: .TH HOC 1
        !             2: .SH NAME
        !             3: hoc \- interactive floating point language
        !             4: .SH SYNOPSIS
        !             5: .B hoc
        !             6: [ file ... ]
        !             7: .SH DESCRIPTION
        !             8: .I Hoc
        !             9: interprets a simple language for floating point arithmetic,
        !            10: at about the level of BASIC, with C-like syntax and
        !            11: functions and procedures with arguments and recursion.
        !            12: .PP
        !            13: The named
        !            14: .IR file s
        !            15: are read and interpreted in order.
        !            16: If no
        !            17: .I file
        !            18: is given or if
        !            19: .I file
        !            20: is `\-'
        !            21: .I hoc
        !            22: interprets the standard input.
        !            23: .PP
        !            24: .I Hoc
        !            25: input consists of
        !            26: .I expressions
        !            27: and
        !            28: .IR statements .
        !            29: Expressions are evaluated and their results printed.
        !            30: Statements, typically assignments and function or procedure
        !            31: definitions, produce no output unless they explicitly call
        !            32: .IR print .
        !            33: .PP
        !            34: Variable names are the usual syntax, including `_'; the name `_'
        !            35: by itself contains the value of the last expression evaluated.
        !            36: The variables E, PI, PHI, GAMMA and DEG are predefined;
        !            37: the last is 59.25..., degrees per radian.
        !            38: .PP
        !            39: Expressions are formed with these operators:
        !            40: .nf
        !            41: .ta .5i 1.5i
        !            42:        ^       exponentiation
        !            43:        ! \- ++ \-\-    unary logical and arithmetic negation, ...
        !            44:        * / %   the obvious
        !            45:        + \-    ditto
        !            46:        > >= < <= == !=
        !            47:        &&
        !            48:        \(or\(or
        !            49:        = += \-= \(**= /= %=
        !            50: .fi
        !            51: Built in functions include 
        !            52: .IR abs ,
        !            53: .I atan
        !            54: (one argument),
        !            55: .IR cos ,
        !            56: .IR exp ,
        !            57: .IR int ,
        !            58: .IR log ,
        !            59: .IR log10 ,
        !            60: .IR sin ,
        !            61: and
        !            62: .IR sqrt .
        !            63: The function
        !            64: .I read(x)
        !            65: reads a value into the variable 
        !            66: .IR x ;
        !            67: the statement
        !            68: .I print
        !            69: prints a list of expressions that may include
        !            70: string constants such as
        !            71: .IR \&\&\&"hello\en" .
        !            72: .PP
        !            73: Control flow includes
        !            74: .IR if-else ,
        !            75: .IR while ,
        !            76: and
        !            77: .IR for ,
        !            78: with braces for grouping.
        !            79: End of line marks end of statement, as does a semicolon.
        !            80: Comments begin with # and continue to end of line.
        !            81: .PP
        !            82: Functions and procedures are introduced by the words
        !            83: .I func
        !            84: and
        !            85: .IR proc ;
        !            86: .I return
        !            87: is used to return, with a value from a function.
        !            88: Within a function or procedure,
        !            89: arguments are referred to as
        !            90: .IR $1 ,
        !            91: .IR $2 ,
        !            92: etc.; all other variables are global.
        !            93: .SH "SEE ALSO"
        !            94: .I
        !            95: The Unix Programming Environment
        !            96: by Brian Kernighan and Rob Pike.
        !            97: .br
        !            98: .IR bas (1),
        !            99: .IR bc (1)
        !           100: and
        !           101: .IR dc (1).
        !           102: .SH BUGS
        !           103: Error recovery is imperfect within function and procedure definitions.
        !           104: .br
        !           105: The treatment of newlines is not exactly user-friendly.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.