{"id":13783183,"url":"https://github.com/amers185/Lisp-Interpreter","last_synced_at":"2025-05-11T17:31:14.774Z","repository":{"id":172319659,"uuid":"147585470","full_name":"amers185/Lisp-Interpreter","owner":"amers185","description":"A Scheme Interpreter (Dialect of LISP) implemented in C with its own garbage collector. ","archived":false,"fork":false,"pushed_at":"2018-09-05T22:27:36.000Z","size":20,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-08-03T18:18:21.565Z","etag":null,"topics":["rercursive-descent-parser","scheme"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/amers185.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2018-09-05T22:13:31.000Z","updated_at":"2018-09-05T22:30:52.000Z","dependencies_parsed_at":null,"dependency_job_id":"6b42d080-c164-4447-8a2c-24bf316b1b63","html_url":"https://github.com/amers185/Lisp-Interpreter","commit_stats":null,"previous_names":["amers185/lisp-interpreter"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amers185%2FLisp-Interpreter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amers185%2FLisp-Interpreter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amers185%2FLisp-Interpreter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amers185%2FLisp-Interpreter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/amers185","download_url":"https://codeload.github.com/amers185/Lisp-Interpreter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253604595,"owners_count":21934886,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["rercursive-descent-parser","scheme"],"created_at":"2024-08-03T18:01:55.165Z","updated_at":"2025-05-11T17:31:14.517Z","avatar_url":"https://github.com/amers185.png","language":"C","funding_links":[],"categories":["C"],"sub_categories":[],"readme":"# Scheme Interpreter \n\nScheme can be considered a dialect of LISP.\nThis project implements a Scheme Interpreter for RSR5 in C. The project \nbuilds off a linkedlist represented as a cons type (Scheme), and uses Value \nstructs(see value.h) to store information about each token seen in the \ninput. These tokenized inputs(generated using the tokenizer in tokenizer.c) \nare parsed using a modified/simplified recursive descent parser, and \nare finally interpreted(see interpreter.c for details). The evaluation \nis done using an environment (and frame) model.\n\nLimitations\n===========\nThe program does not handle all scheme commands. For details, look at the \nbindings and special forms in interpreter.c.\n\nUsage\n===========\nTo Run:\n1. Go to Directory\n2. `make interpreter \u003c testFile` \n3. `make memtest \u003c testFile` for memory tests using Valgrind.\n4. `make clean` to remove all compiled files.\n\n`testFile` could be selected from the list of test cases in directory:\n`test-cases`\n\nCredits\n===========\nThis project could not have been completed without help from Ammar Babar.\nProf. Jed Yang was an invaluable resource in figuring out problems with the \ninterpreter. All test cases were tested in racket which was an great resource.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famers185%2FLisp-Interpreter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famers185%2FLisp-Interpreter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famers185%2FLisp-Interpreter/lists"}