{"id":18855248,"url":"https://github.com/fogus/lithp","last_synced_at":"2025-04-09T10:07:43.842Z","repository":{"id":467116,"uuid":"91837","full_name":"fogus/lithp","owner":"fogus","description":"McCarthy's Lisp in Python with macros.  A celebration of 50+ years of symbolic processing.","archived":false,"fork":false,"pushed_at":"2023-08-18T17:49:42.000Z","size":144,"stargazers_count":261,"open_issues_count":5,"forks_count":27,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-02T08:11:13.590Z","etag":null,"topics":["langdev"],"latest_commit_sha":null,"homepage":"http://fogus.me/fun/lithp","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"EvanOxfeld/node-unzip","license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fogus.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2008-12-17T03:14:52.000Z","updated_at":"2025-03-29T18:48:15.000Z","dependencies_parsed_at":"2024-11-15T04:03:32.210Z","dependency_job_id":"9db226eb-ca29-4ff5-8ca6-24cf3f1d9fbd","html_url":"https://github.com/fogus/lithp","commit_stats":{"total_commits":238,"total_committers":5,"mean_commits":47.6,"dds":0.02941176470588236,"last_synced_commit":"607d20fe18ca0a2af026c12d223bb802746fe7e7"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fogus%2Flithp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fogus%2Flithp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fogus%2Flithp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fogus%2Flithp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fogus","download_url":"https://codeload.github.com/fogus/lithp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248018060,"owners_count":21034048,"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":["langdev"],"created_at":"2024-11-08T03:53:20.169Z","updated_at":"2025-04-09T10:07:43.816Z","avatar_url":"https://github.com/fogus.png","language":"Python","readme":"Lithp is a(nother) McCarthy Lisp interpreter (with macros implemented in Lithp) written in the Python Programming Language.\n\n*note: currently only the Python port is fully operational*\n\nRIP John McCarthy 1927.09.04 - 2011.10.23\n\nRIP Timothy Hart 1939.09.18  - 2014.01.20\n\n\nWhat The?!?\n===========\n\nMy last true exposure to Lisp was during my college years.  Since then I have hacked away at a bit of ELisp, but even that was done in the spirit of immediacy.  With the resurgence of Lisp, thanks to the advocacy of [Mr. Paul Graham](http://www.paulgraham.com), I feel it is once again time to (re)learn the language.  However, times have changed; I have written my recursive algorithms, I have explored the beauty of closures, and I have touched on functional programming with the grace and emotion of a lover.  However, I fear that if I simply take up the task of (re)learning Lisp then I will take these notions for granted and not appreciate them fully as they relate to Lisp itself.  Therefore, I feel that my best chance for truly absorbing Lisp is the invent Lisp.  While the leg-work has already been done by such luminaries as [Mr. McCarthy][jmc], [Mr. Steele][steele], and [Mr. Sussman][sussman], it is my intention to approach their works as if they are newly minted and implement them within the Lithp interpreter.\n\n[steele]: http://research.sun.com/people/mybio.php?uid=25706\n[jmc]: http://www-formal.stanford.edu/jmc\n[sussman]: http://swiss.csail.mit.edu/~gjs\n\nFeatures\n========\nThe Lithp interpreter provides the absolute core functions of McCarthy's original as outlined in his classical paper.  That is, there are only seven functions and two special forms.\n\nSeven Functions\n---------------\n1.  `atom`\n2.  `car`\n3.  `cdr`\n4.  `cond`\n5.  `cons`\n6.  `eq`\n7.  `quote`\n\nTwo Special Forms\n------------------\n1. `label`\n2. `lambda`\n\nRunning\n=======\n\n    cd src/py\n\tpython lithp.py\n\nLicense\n=======\n\nThis software is provided as-is under the [MIT license](http://opensource.org/licenses/MIT).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffogus%2Flithp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffogus%2Flithp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffogus%2Flithp/lists"}