{"id":13781162,"url":"https://github.com/bnzis/bulb","last_synced_at":"2025-05-11T14:34:43.516Z","repository":{"id":178465155,"uuid":"116580873","full_name":"bnzis/bulb","owner":"bnzis","description":"My little programming language. ","archived":false,"fork":false,"pushed_at":"2020-07-14T11:25:08.000Z","size":213,"stargazers_count":12,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"master","last_synced_at":"2024-11-17T16:42:24.750Z","etag":null,"topics":["bulb","c","cpp","interpreter","interpreters","language","lisp","scripting","scripting-language"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bnzis.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}},"created_at":"2018-01-07T16:27:25.000Z","updated_at":"2024-09-20T12:13:39.000Z","dependencies_parsed_at":"2024-01-07T23:04:25.353Z","dependency_job_id":"cc016122-ea45-458a-8ce5-b68024c7a87c","html_url":"https://github.com/bnzis/bulb","commit_stats":null,"previous_names":["bnzis/bulb"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bnzis%2Fbulb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bnzis%2Fbulb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bnzis%2Fbulb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bnzis%2Fbulb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bnzis","download_url":"https://codeload.github.com/bnzis/bulb/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253580313,"owners_count":21930923,"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":["bulb","c","cpp","interpreter","interpreters","language","lisp","scripting","scripting-language"],"created_at":"2024-08-03T18:01:23.508Z","updated_at":"2025-05-11T14:34:43.171Z","avatar_url":"https://github.com/bnzis.png","language":"C","readme":"## Bulb\nBulb is a simple **Lisp** dialect very similar to **Scheme** on which \nI work in my free time. The ultimate goal of the project is to create \na lightweight interpreter, easy to integrate on other projects.\nHere are some examples of the syntax:\n## Basics\n```scheme\n; this is a comment\n(def integer 1) \n(def floating 3.1415926535)\n(def flag #f) ; #f stands for false, #t for true\n(def str \"potatoes\") ; this a string\n\n; functions can be defined like this \n(def (abs x) (if (\u003e x 0) x (* x -1))) \n\n; or like this \n(def abs (lambda (x) (if (\u003e x 0) x (* x -1))))\n\n; more complex example of code\n(def (print-list l)\n    (if (and (list? l) (not (null? l)))\n        (begin \n            (print (car l) \" \")\n            (print-list (cdr l)))))\n\n(print-list (list 1 2 3 4 5)) ;=\u003e 1 2 3 4 5\n(print \"\\n\")\n```\n\n## How to install\nFirst of all, you need the source code.\nDownload the tarball or clone the repository: \n```\ngit clone https://github.com/bnzis/bulb\n```\nYou need **make** and a **C compiler**. If you're a \n**Linux** or **BSD** user, you probably already have both; \nif not, consult the manual of your distribution to install \nthem. If you use Windows instead, I recommend installing **MinGW**.\nCompile and install: \n```\ncd /path/of/bulb\nmake all # please check config.mk before building\nsudo make install # works only on Linux and BSD.\n```\n\n## How to use it\n```\nbulb # open the repl\nbulb /path/to/file # execute the code in the file\n```\n","funding_links":[],"categories":["C"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbnzis%2Fbulb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbnzis%2Fbulb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbnzis%2Fbulb/lists"}