Commit Graph

44 Commits

Author SHA1 Message Date
11e831bbcc switching GC from semi-space copying to mark-sweep 2020-12-31 17:48:47 +00:00
a161944682 refactored fmt code 2019-05-31 10:54:13 +00:00
deb53399a4 introduced the new type hcl_bitmask_t 2018-04-26 04:39:20 +00:00
480fd879ee renamed quo to div and added mdiv 2018-04-08 17:56:25 +00:00
69a68e3fa4 added the 'rem' and 'mod' primitive functions 2018-04-08 17:35:21 +00:00
746dceff43 added lambda? predicate 2018-04-07 15:21:05 +00:00
54015185ab added many type checking predicates 2018-04-07 04:43:56 +00:00
726b8026b3 added the abs primitive function 2018-04-07 02:28:38 +00:00
f1871fbe45 shortened bitwise-xxxx to bit-xxxx 2018-04-05 07:11:21 +00:00
3f614517a3 added primitive functions for bitwise operations on integers 2018-04-05 04:56:52 +00:00
d5097b998a added partial sqrt function 2018-04-03 14:02:40 +00:00
0d350e9707 added hcl_mltnums() which scales the result according to the first parameter 2018-04-02 12:52:10 +00:00
dd73887115 added hcl_genums(), hcl_gtnums(), hcl_lenums(), hcl_ltnums(), hcl_eqnums(), hcl_nenums() 2018-04-02 12:28:09 +00:00
2253d09a18 implemented basic arithmetic operations for fixed-point decimals 2018-03-30 15:43:09 +00:00
116512ae9d started adding fpdec calculation functions 2018-03-28 16:40:42 +00:00
25253fc0e1 added neq? nql? nqk? for convenience over using not.
added >, >=, <, <=, =, /=
2018-03-28 03:15:20 +00:00
a60bd0c898 renamed hcl_purgeatdic() to hcl_zapatdic()
exposed hcl_moveoop() 
extended the meaning of the kernel bits in the object flags
extended hcl_pfbase_t to include the type - one of HCL_PFBASE_FUNC, HCL_PFBASE_VAR, HCL_PFBASE_CONST. HCL_PFBASE_CONST not fully implemented yet
2018-03-08 14:18:30 +00:00
e3b5d33811 implemented the builtin primitive function sprintf 2018-03-05 03:35:44 +00:00
71d024837d enhanced the compiler to implement short-circuited logical 'and' and 'or' special forms.
renamed the primitive function 'and' to '_and' and 'or' to '_or'
2018-03-03 17:16:41 +00:00
0b460a3f2a added the logf builtin function 2018-03-01 09:46:02 +00:00
6eaf73a3d7 touched up various remaining implementation details of the printf builtin function. 2018-03-01 05:25:09 +00:00
09302470f7 enhanced hcl_inttostr() to accept a negative radix to produce lower-case alphabetic digits 2018-02-28 15:57:19 +00:00
ffa6c39852 fixed a bug in printing a single character when hcl_ooch_t is hcl_bch_t
implemented the primitive printf function partially
2018-02-28 10:17:05 +00:00
701554af0d fixed a wrong index used when getting the mod pointer into/from the prim object 2018-02-28 05:04:42 +00:00
c865de4d61 changed the prototype of hcl_pfimpl_t to accept a hcl_mod_t* pointer 2018-02-28 04:52:01 +00:00
eaf7f9243d changed types of some variables from hcl_oow_t to hcl_ooi_t
attempted to add the builtin printf function
2018-02-26 15:52:15 +00:00
ef51ee4a1d enhanced the logfmtv to handle encoding conversion of the format string 2018-02-26 15:24:45 +00:00
7e6b16e153 work in progress to implement the builtin printf function 2018-02-24 04:01:19 +00:00
9498530691 enhanced HCL_BRANDOF() to avoid multiple comparisons.
added the eqk? builtin primitive
removed unnecessary lines
2018-02-23 07:17:23 +00:00
6e4a8f6081 enhanced pf_log to print a character without quotes.
fixed formatting specifiers in log_char_object() in prim.c
2018-02-21 13:13:25 +00:00
edea84bd46 added the gc builtin function 2018-02-18 15:02:57 +00:00
270a762e32 added some builtin modules, but without many functions in them 2018-02-15 15:36:15 +00:00
374748f271 added reader & compiler check to filter out special symbols when processing argument and variable names in more contexts 2018-02-15 01:39:00 +00:00
f802bec44a integrated bigint
cleaned up code
2018-02-13 16:10:41 +00:00
0483f506f8 changed mod_test to mod_fake_test. this will eventually be removed 2018-02-13 02:30:06 +00:00
2201ee5a94 added hcl_walkdic
fixed a bug of not printing the list closer properly in hcl_print().
enhanced error handling
2018-02-12 16:51:38 +00:00
4ddffc101d mapped a dotted identifer to a primitive function 2018-02-12 10:50:44 +00:00
0546665e95 renamed prim to pf.
added module manipulation functions
2018-02-09 04:24:50 +00:00
4f55376107 touched up code. added eqv? eql? not 2018-02-08 07:40:27 +00:00
e54096f2a0 changed copyright years 2018-02-07 14:13:13 +00:00
7826f0ff06 changed the reader to handle #(), #[], #{}, '() specially 2018-02-06 10:16:01 +00:00
293222d5c5 trying to revive this project 2018-02-05 10:43:25 +00:00
ccca08c725 added some primitive functions 2016-10-25 13:44:38 +00:00
15208b5e85 added some code to handle primitives and the call instruction 2016-10-06 17:49:47 +00:00