Linisp

Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

34 check-ins

2024-03-13 12:21
* Made function names more consistant (Leaf check-in: 13db1f9c4b user: ryan tags: trunk)
2024-03-09 00:25
* Changed { & } to [ & ] to better match C / Bash syntax (check-in: a252c5304c user: RyanMcCoskrie tags: trunk)
2024-03-06 20:33
+ Added Vim settings to source files (check-in: 97e6b72459 user: ryan tags: trunk)
2024-03-06 20:20
* Duplicate data from creating global variables now freed prior to script execution (check-in: 864f6ed093 user: ryan tags: trunk)
2024-03-03 20:07
+ Added environ variable for examing environment variables (check-in: c5a78d35df user: ryan tags: trunk)
2024-03-03 09:40
+ Added getenv/setenv/unsetenv functions for environment variable access

* Slight adjustment to how the main function closes (check-in: c88a3a8358 user: ryan tags: trunk)

2024-02-29 18:11
+ Added "filter" and "foldl" to Stdlib

* Fixed a memory leak in the REPL (check-in: 7887cf0a4a user: ryan tags: trunk)

2024-02-25 02:29
+ Added "strlen" builtin

+ Type errors can now display the String type properly

+ Added a clean option to the Makefile

* Improved the freeGlobals function that is run on termination (check-in: edac18fa03 user: ryan tags: trunk)

2024-02-24 21:12
+ Added "exit" function

* Cleaned up numerous memory leaks (check-in: 3769cf40f8 user: RyanMcCoskrie tags: trunk)

2024-02-24 20:37
+ Added goal of latest C standard to ROADMAP

* Added flag for C 2018 to Makefile (check-in: 10cecab521 user: RyanMcCoskrie tags: trunk)

2024-02-18 20:12
+ Added "isString" builtin function (check-in: f097f7d82e user: ryan tags: trunk)
2024-02-18 05:49
Added and renamed further functions and a standard library

+ Added "argv" variable that reads command line arguments + Added "gets" and "include" functions * Linisp binary now behaves like a regular interpreter that runs scripts * "define" is now named "=" * Fixed memory fault in "join" * Further refined our sample code (check-in: 86fd686de2 user: ryan tags: trunk)

2024-02-09 21:20
Changed sample code to use Q-Expressions (check-in: ee0e7388b7 user: ryan tags: trunk)
2024-02-09 21:11
Numerous changes and additions

+ Added "display" function for simple output + Added "error" function for terminating functions + Added parameter checking to numerous functions + Added more milestones to ROADMAP.txt * Type checking functions now return numeric values * Reduced number of memory leaks * builtin_cmp, builtin_op and builtin_var no longer listed in builtins.h * builtin_cmp, builtin_op and builtin_var renamed to start with impl_ (check-in: 5535781612 user: ryan tags: trunk)

2024-02-07 21:54
Added string types and comments

* Consolidated symbols, errors and strings to use the same property of LVal (check-in: d77009da62 user: ryan tags: trunk)

2024-02-07 19:52
Bug fixes

* == and != now work on non-numeric types * callLVal() now returns a value under slightly more circumstances (check-in: 21b80248d4 user: ryan tags: trunk)

2024-02-07 09:54
Incremental improvements

+ Added comparison functions (>, <, ==, etc) + Added type checking functions * Added true / false constants * Fixed some error messages - Removed some obsolete code (check-in: 4a0788947d user: ryan tags: trunk)

2024-02-06 21:48
Added (limited?) support for Lambda values

+ Added "define" and "export" builtins + Added a "parent" property to the LEnv struct + Added the copyLEnv function * Fixed Logic error in readLVal * Renamed lval_read and lval_read_number to readLVal and readNumberLVal * Renamed putLEnv to putLocal and added putGlobal (check-in: 174fd84bb0 user: ryan tags: trunk)

2024-01-24 21:08
Added ability to define variables (functions are not supported yet)

+ Function is a new sub-type of LEnv + Added LEnv structure for namespaces + Added more specialised versions of LASSERT macro + Added a typeName function * LASSERT now uses printf style formatting * Fixed a wrong variable being checked in lval_read() * Many functions now take an LEnv variable for namespace * Changed some variable names to better match tutorial code (check-in: ce4d127302 user: ryan tags: trunk)

2024-01-16 02:03
Grammar now identifies symbols with a regular-expression (check-in: 4f333d4e7b user: ryan tags: trunk)
2024-01-16 01:53
Added Q-Expressions (quotes), simple evaluation and builtin list functions

+ Added builtins.c source file * Renamed lval_symbol to symbolLVal, etc * Renamed lval_dev to freeLVal (check-in: 31383f4be8 user: ryan tags: trunk)

2024-01-15 01:34
Movement towards use of S-Expressions

* Errors are now strings (check-in: 3106998a89 user: ryan tags: trunk)

2024-01-06 22:56
(Remembered to add LVal files - I'm not good at fossil yet) (check-in: c7fb2ca528 user: RyanMcCoskrie tags: trunk)
2024-01-06 22:22
+ Added LVal (located value) structure + Added basic error handling * Compile options now includ debugging symbols (check-in: 11cc1a4002 user: RyanMcCoskrie tags: trunk)
2024-01-05 23:07
Reformated and slightly updated ROADMAP.txt (check-in: 4706a4a555 user: RyanMcCoskrie tags: trunk)
2023-12-29 00:18
* Split source into sepearate main and parser source files (check-in: f0fb188037 user: ryan tags: trunk)
2023-12-29 00:06
* REPL now displays result of calculation rather than syntax tree (check-in: dc6398bee5 user: ryan tags: trunk)
2023-12-28 22:57
+ Toy REPL now does simple syntactic analysis (check-in: be34e738a4 user: ryan tags: trunk)
2023-12-28 17:33
Created branch following the C tutorial at buildyourownlisp.com (check-in: 2287dcadd0 user: ryan tags: trunk)
2023-12-28 17:30
Create new branch named "C_Tutorial" (Closed-Leaf check-in: 4c3b11e899 user: ryan tags: C_Tutorial)
2023-12-28 09:52
Create new branch named "C" (Closed-Leaf check-in: 6835d851ba user: ryan tags: C)
2023-12-28 09:43
Added a sample of what Linisp should look like Significantly rewrote and clarified ROADMAP (check-in: 13dea15c50 user: ryan tags: trunk)
2023-12-28 00:24
Added a ROADMAP.txt file containing initial intentions (check-in: e0c75691d4 user: ryan tags: trunk)
2023-12-28 00:17
initial empty check-in (check-in: fb439b7f38 user: RyanMcCoskrie tags: trunk)