STklos Reference Manual

10. Customizations

Contents
| *Top*
1 | Introduction
2 | Expressions
3 | Program structure
4 | Standard Procedures
5 | Regular Expressions
6 | Pattern Matching
7 | Exceptions and Conditions
8 | STklos Object System
9 | Threads, Mutexes and Condition Variables
10 | Customizations
11 | The ScmPkg Package System
12 | Foreign Function Interface
13 | Using the SLIB package
14 | SRFIs
15 | Index
| Bibliography

STklos environement can be customized using parameters objects. These parmaters are listed below.

`(real-precision)` | STklos procedure

`(real-precision value)`
This parameter object permits to change the default precision used to print real numbers.

>     (real-precision)        ⇒ 15
>     (define f 0.123456789)
>     (display f)             ⇒ 0.123456789
>     (real-precision 3)
>     (display f)             ⇒ 0.123

`(accept-srfi-169-numbers)` | STklos procedure

`(accept-srfi-169-numbers value)`
This parameter object permits to change the behavior of the reader with underscores in numbers. Numbers with underscores are defined in SRFI-169 (Underscores in numbers). By default, this variable is true, meaning that underscores are accepted in numbers.

>     (accept-srfi-169-numbers)        ⇒ #t
>     (symbol? '1_000_000)             ⇒ #f
>     (number? '1_000_000)             ⇒ #t
>     (accept-srfi-169-numbers #f)
>     (symbol? '1_000_000)             ⇒ #t
>     (number? '1_000_000)             ⇒ #f

`(read-case-sensitive)` | STklos procedure

`(read-case-sensitive value)`
This parameter object permits to change the default behaviour of the `read` primitive when reading a symbol. If this parameter has a a true value a symbol is not converted to a default case when interned. Since R7RS requires that symbol are case insignificant, the default value of this parameter is `#t`.

>     (read-case-sensitive)        ⇒ #t
>     (read-from-string "ABC")     ⇒ ABC
>     (read-case-sensitive #f)
>     (read-from-string "ABC")     ⇒ abc

Note: Default behaviour can be changed for a whole execution with the `--case-sensitive` or `case-insensitive` options.
Note: See also syntax for special characters in symbols.

`(write-pretty-quotes)` | STklos procedure

`(write-pretty-quotes value)`
This parameter object permits to change the default behaviour of the `display` or `write` primitives when they write a list which starts with the symbol quote, quasiquote, unquote or unquote-splicing. If this parameter has a false value, the writer uses the list notation instead of a more human-readable value. By default, this parameter value is set to `#t`.

>     (let ((x ''a))
>       (display x)
>       (display " ")
>       (write-pretty-quotes #f)
>       (display x))               -| 'a (quote a)

`(load-path)` | STklos procedure

`(load-path value)`
`load-path` is a parameter object. It returns the current load path. The load path is a list of strings which correspond to the directories in which a file must be searched for loading. Directories of the load path are prepended (in their apparition order) to the file name given to `load` or `try-load` until the file can be loaded.
The initial value of the current load path can be set from the shell, by setting the `STKLOS_LOAD_PATH` shell variable.
Giving a `value` to the parameter `load-path` permits to change the current list of paths.

`(load-suffixes)` | STklos procedure

`(load-suffixes value)`
`load-suffixes` is a parameter object. It returns the list of possible suffixes for a Scheme file. Each suffix, must be a string. Suffixes are appended (in their apparition order) to a file name is appended to a file name given to `load` or `try-load` until the file can be loaded.

`(load-verbose)` | STklos procedure

`(load-verbose value)`
`load-verbose` is a parameter object. It permits to display the path name of the files which are loaded by `load` or `try-load` on the current error port, when set to a true value. If `load-verbose` is set to `#f`, no message is printed.

`(thread-handler-error-show)` | STklos procedure

`(thread-handler-error-show value)`
When an untrapped error occurs in a thread, it produces an uncaught exception which can finally be trapped when the thread is joined. Setting the `thread-handler-error-show` parameter permits to see error message as soon as possible, even without joining the thread. This makes debugging easier. By default, this parameter is set to `#t`.

`(stklos-debug-level)` | STklos procedure

`stklos-debug-level` is a parameter objet. It permits to know the current debugging level. The default value of this parameter is 0 (meaning "no debug"). Note that the debugging level can also be set by the `--debug` option of the `stklos(1)` command.

This Html page has been produced by Skribe.
Last update Wed Nov 24 17:57:14 2021