Skip to content

DeprecatedR5RSSyntaxAndProcedures

Felix S. Klock II edited this page Jul 28, 2013 · 2 revisions

== Deprecated R5RS Syntax and Procedures ==

delay, force

Andre van Tonder has criticized these features and proposed a better alternative in SRFI 45.

char-ci=?, char-ci<?, char-ci>?, char-ci<=?, char-ci>=?

Although case-insensitive comparisions are defined for characters, it usually makes more sense to compare normalized Unicode strings.

char-upcase, char-downcase

Although Unicode defines locale-independent case conversions for characters, it usually makes more sense to perform case conversions on strings.

string-downcase!, string-upcase!

These operations don't really make sense for Unicode strings, where character-by-character case conversions are usually the wrong thing.

with-input-from-file, with-output-to-file

These procedures implement a paradigm that breaks down in multithreaded programs.

values, call-with-values

Larceny ignores extra return values in all contexts except those created by call-with-values, and coerces zero return values to #!unspecified in contexts that demand a single return value. Some implementations of the R5RS support only the minimal semantics mandated by the R5RS, however, so programs that take advantage of Larceny's semantics are non-portable.

Clone this wiki locally