{"id":13782187,"url":"https://github.com/avorobey/sketch","last_synced_at":"2025-05-11T15:32:14.955Z","repository":{"id":137923574,"uuid":"774312","full_name":"avorobey/sketch","owner":"avorobey","description":"A toy Scheme interpreter written in C","archived":false,"fork":false,"pushed_at":"2010-12-14T13:40:30.000Z","size":205,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-11-17T17:43:01.971Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://sketch.github.com","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/avorobey.png","metadata":{"files":{"readme":"README","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}},"created_at":"2010-07-14T10:37:50.000Z","updated_at":"2018-03-29T04:11:02.000Z","dependencies_parsed_at":"2023-03-11T12:15:43.796Z","dependency_job_id":null,"html_url":"https://github.com/avorobey/sketch","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avorobey%2Fsketch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avorobey%2Fsketch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avorobey%2Fsketch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/avorobey%2Fsketch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/avorobey","download_url":"https://codeload.github.com/avorobey/sketch/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253588665,"owners_count":21932297,"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":[],"created_at":"2024-08-03T18:01:33.870Z","updated_at":"2025-05-11T15:32:14.670Z","avatar_url":"https://github.com/avorobey.png","language":"C","funding_links":[],"categories":["C"],"sub_categories":[],"readme":"Sketch is a toy Scheme interpreter written in C. The project's in its infancy.\nThe primary reasons to do it were: to scratch an itch; to figure out how to\nimplement some of the interesting features of Scheme w/o looking up existing\nimplementations; and to try to get decent performance while keeping the code\nvery simple.\n\nThe guiding principle is simplicity of code. The next concern is performance, but\nsimplicity will usually be much more important to me.\n\nThe plan is to get core features of Scheme working, as outlined in R5RS:\nhttp://www.schemers.org/Documents/Standards/R5RS/\nIn particular, I want lexical scoping, closures, and continuations to work. There\nwill be some sort of garbage collection that is /not/ reference counting.\n\nI'm documenting my progress as I go along in a series of blogposts in Russian at\nmy blog (http://avva.livejournal.com). They're structured as a series of 'fits',\nand code that's ready by the end of each fit will be so labeled in this repo.\nIt'd be nice to finish the core functionality in 8 fits.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favorobey%2Fsketch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Favorobey%2Fsketch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favorobey%2Fsketch/lists"}