Daniel Kochmański
f1c3edfeb3
reader: wrap up the escaping and remove kludges
2026-03-07 22:42:12 +01:00
Daniel Kochmański
b6ac33834f
reader: honor *read-suppress* in #\foo:bar reader
2026-03-07 22:42:12 +01:00
Daniel Kochmański
9369946933
reader: add new operators and fix found regressions
...
- low limit in escapes was off-by-one
- quoted character immediately after :, like :|foo| did not pare correctly
2026-03-07 22:42:12 +01:00
Daniel Kochmański
29a4a2c51a
reader: separate token parsing from token reading
...
Parsing the token ends in a separate file.
2026-03-07 22:42:12 +01:00
Daniel Kochmański
6828cb7005
reader: use token object to pass tokens prior parsing
2026-03-07 22:42:12 +01:00
Daniel Kochmański
4e7aa4e358
reader: factor out ecl_read_only_token from ecl_read_token
...
The end goal is to make ecl_read_token become ecl_parse_token and read tokens
only from ecl_read_only_token, to keep Common Lisp -specific processing out of
the token reader.
2026-03-07 22:42:12 +01:00
Daniel Kochmański
aef1cd8129
reader: simplify and clarify arguments of ecl_read_token
2026-03-07 22:42:12 +01:00
Daniel Kochmański
8a13a9e85f
reader: factor out ecl_read_token from ecl_read_object_with_delimiter
2026-03-07 22:42:12 +01:00
Daniel Kochmański
a4504dc1a3
reader: move the general-purpose reader from read.d to reader.d
2026-03-07 22:42:12 +01:00
Daniel Kochmański
cc33abf37a
reader: move common-lisp specific readtable entries t rtab_cl.d
2026-03-07 22:42:12 +01:00
Marius Gerbershagen
a97a881b90
bignums: fix wrong usage of bignum registers
...
Add comment explaining how bignum registers should be used.
2020-01-17 18:03:26 +01:00
Daniel Kochmański
ea87100a06
long-float: remove conditionalization
...
Many parts of the source code were bent backward to support builds
without long floats which are always present given we depend expect
c99 compiler.
The corresponding C macros (ECL_LONG_FLOAT) and the *feature*
entry (:long-float) are marked as deprecated in the documentation.
2019-05-24 21:04:59 +00:00
Marius Gerbershagen
ba6e6ddde7
reader: don't treat -. and +. as a number
...
CLHS section 2.3.1 mandates that all numbers must contain at least
one digit. Fixes #427 .
2018-08-23 22:55:23 +02:00
Daniel Kochmański
ed5ecd03eb
ieee-floats: fix builds with --with-ieee-fp=no
...
Functions to print (nan,float)-to-string and and predicates are still
available, but ext:*-float-*-infinity aren't available if ECL is built
with option `--with-ieee-fp=no`.
2016-08-11 22:38:30 +02:00
Daniel Kochmański
5e8ec11bdd
cosmetic: fix indent (rest of C)
2016-05-06 08:41:52 +02:00
Matthew Mondor
8f07cd58d8
The ECL code no longer uses tabulator characters, they were replaced
...
by spaces.
A custom script was used to insert/replace Emacs and ViM per-file editor
settings according to their type and the new ECL coding style.
2015-09-03 07:35:47 -04:00
Daniel Kochmański
4d19a27424
cosmetic: untabify
...
Signed-off-by: Daniel Kochmański <dkochmanski@turtle-solutions.eu>
2015-06-21 14:38:20 +02:00
Juan Jose Garcia Ripoll
825fc8cbd3
Cnil and Ct are now part of legacy
2012-06-30 23:01:40 +02:00
Juan Jose Garcia Ripoll
d9ed24c440
Change ecl_make_(single|double|long)float to ecl_make_*_flat, splitting the name for consistency
2012-06-10 00:09:41 +02:00
Juan Jose Garcia Ripoll
cb1cf92713
Rename ecl_fix() to ecl_fixnum(), just like ecl_long_float() or ecl_double_float()
2012-06-07 23:55:43 +02:00
Juan Jose Garcia Ripoll
64a9168434
CHARACTERP, BASE_CHAR_P, BASE_CHAR_CODE_P, CODE_CHAR, CHAR_CODE, REAL_TYPE, IMMEDIATE, IMMEDIATE_TAG, FIXNUM_TAG, FIXNUM_MINUSP, FIXNUM_PLUSP, FIXNUMP and fix get the ecl_ prefix
2012-06-06 11:19:55 +02:00
Juan Jose Garcia Ripoll
fb2afabbd5
When parsing a floating point number at least one digit should be present. ECL parsed +.e0 as +0.0e0, instead of as a symbol.
2011-07-31 15:51:09 +02:00
Juan Jose Garcia Ripoll
a86bbd3605
Fixed various warnings to allow compiling ECL with CLang
2011-01-23 16:06:47 +01:00
Juan Jose Garcia Ripoll
482368e25a
Fixed reading of decimal numbers in other basis (2. would not be read as integer 2)
2010-12-28 23:19:00 +01:00
Juan Jose Garcia Ripoll
e18fdb426a
Fixed typo
2010-10-19 22:51:14 +02:00
Juan Jose Garcia Ripoll
3d0637bd06
ECL mistakenly allowed the rational denominator to carry a sign, as in 1/-2.
2010-10-19 00:12:13 +02:00
Juan Jose Garcia Ripoll
04c2a210b3
ecl_parse_number and ecl_parse_integer are splitted into separate files and do not rely on the C library (atoi, strtod, ...) because these functions are affected by the locale.
2010-09-27 10:23:13 +02:00