View Source Document

symbol-p.robin

;'<<SPEC'

<!--
Copyright (c) 2012-2024, Chris Pressey, Cat's Eye Technologies.
This file is distributed under a 2-clause BSD license.  See LICENSES/ dir.
SPDX-License-Identifier: LicenseRef-BSD-2-Clause-X-Robin
-->

### `symbol?` ###

    -> Tests for functionality "Evaluate Robin Expression (with literal)"

`symbol?` evaluates its argument, then evaluates to `#t` if it is a symbol,
`#f` otherwise.

    | (symbol? (literal this-symbol))
    = #t

Numbers are not symbols.

    | (symbol? 9)
    = #f

Lists are not symbols.

    | (symbol? (prepend 1 ()))
    = #f

The argument to `symbol?` may (naturally) be any type, but there must be
exactly one argument.

    | (symbol? 77 88)
    ? abort (illegal-arguments (77 88))

    | (symbol?)
    ? abort (illegal-arguments ())

'<<SPEC'

(require symbol?)