Files
ioccc/1987/wall
Cody Boone Ferguson 826a6eb01a Typo fix menu item for location of authors
It should be 'Location of winning authors' (as it is now) but by mistake
there was an extra space ('Location of winning  authors'). Obviously
this is a huge commit as every html file with a menu (almost all) had to
be updated.
2024-06-17 05:57:52 -07:00
..
2024-06-14 06:52:23 -07:00
2023-09-11 05:53:18 -07:00
2023-07-06 21:49:38 -07:00

To build:

    make all
    ```


## To use:

``` <!---sh-->
    ./wall
    # enter some numbers

    ./wall | some_command
    # enter some strings or numbers, depending on command

Try:

    ./try.sh

You may of course run the commands manually and enter text as you wish. For instance you might try one or both of:

    ./wall | bc

    ./wall | cat

and enter some input like:

    x*x
    2^x
    quit # for the cat version

which the script does through a pipeline except that here you can enter more text if you wish, line by line.

Judges' remarks:

What we found amazing was how the flow of control was transferred between subroutines. Careful inspection will show that the array of pointers to functions named vi refers to functions which seem to not be directly called. Even so, these pointers to functions are being used as an argument to signal(3) (used both with and without an arg - but how?). Can you determine why this is being done and how it is being exploited?

Some compilers complained about this file, so we changed: =++I to = ++I.

Author's remarks:

No remarks were provided by the author.