diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/bane.21.cdr16.gmi | 75 |
1 files changed, 0 insertions, 75 deletions
diff --git a/doc/bane.21.cdr16.gmi b/doc/bane.21.cdr16.gmi deleted file mode 100644 index dcd8d95..0000000 --- a/doc/bane.21.cdr16.gmi +++ /dev/null @@ -1,75 +0,0 @@ -title: POSIX API for ISLisp -author: Darren Bane -copyright: 2021 Darren Bane, CC BY_SA - -# Abstract - -A mapping from Scheme's SRFI-170, "POSIX API", to ISLisp is defined. - -# Introduction - -Although they are similar, Scheme and ISLisp are not the same language. This document adapts the standard Scheme POSIX interface to ISLisp accounting for: - -* Different naming conventions (e.g. `predicatep` rather than `predicate?`) -* Historical practice, in particular compatibility with OpenLisp (the only commercial implementation) is prioritised - -# Dependencies - -SRFI-170 depends on at least part of several other SRFIs, in particular: - -* SRFI-19, "Time Data Types and Procedures" -* SRFI-106, "Networking operations" -* SRFI-158, "Generators and Accumulators" - -SRFI-39, "Parameter objects", is superseded by ISLisp's dynamic variables. - -Only SRFI-106 is implemented fully; the subset of required symbols is taken from the others. - -# Mapping - -Any symbols not mentioned in the following are unchanged from SRFI-170. - -## S3.3, "File system" - -```table -┌──────────────────┬──────────────────┐ -│ Scheme │ ISLisp │ -╞══════════════════╪══════════════════╡ -│ file-info? │ file-info-p │ -├──────────────────┼──────────────────┤ -│ delete-directory │ remove-directory │ -└──────────────────┴──────────────────┘ -``` -## S3.5, "Process state" - -```table -┌────────────────────────┬──────────────────┐ -│ Scheme │ ISLisp │ -╞════════════════════════╪══════════════════╡ -│ set-umask! │ set-umask │ -├────────────────────────┼──────────────────┤ -│ set-current-directory! │ change-directory │ -├────────────────────────┼──────────────────┤ -│ pid │ getpid │ -├────────────────────────┼──────────────────┤ -│ user-uid │ getuid │ -└────────────────────────┴──────────────────┘ -``` -## S3.11, "Environment variables" - -```table -┌──────────────────────────┬────────┐ -│ Scheme │ ISLisp │ -╞══════════════════════════╪════════╡ -│ get-environment-variable │ getenv │ -└──────────────────────────┴────────┘ -``` -## S3.12, "Terminal device control" - -```table -┌───────────┬───────────┐ -│ Scheme │ ISLisp │ -╞═══════════╪═══════════╡ -│ terminal? │ terminalp │ -└───────────┴───────────┘ -``` |