{"id":13610757,"url":"https://github.com/marcelklehr/magnet","last_synced_at":"2025-07-26T11:14:06.022Z","repository":{"id":66016986,"uuid":"4004065","full_name":"marcelklehr/magnet","owner":"marcelklehr","description":"An experiment: A duck-typed, object-oriented, syntax-driven (and potentially awesome) programming language.","archived":false,"fork":false,"pushed_at":"2012-05-31T13:33:09.000Z","size":288,"stargazers_count":7,"open_issues_count":10,"forks_count":0,"subscribers_count":1,"default_branch":"develop","last_synced_at":"2025-04-10T20:22:56.576Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/marcelklehr.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}},"created_at":"2012-04-12T11:43:36.000Z","updated_at":"2024-01-14T17:29:44.000Z","dependencies_parsed_at":"2023-02-19T21:15:23.918Z","dependency_job_id":null,"html_url":"https://github.com/marcelklehr/magnet","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/marcelklehr/magnet","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcelklehr%2Fmagnet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcelklehr%2Fmagnet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcelklehr%2Fmagnet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcelklehr%2Fmagnet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marcelklehr","download_url":"https://codeload.github.com/marcelklehr/magnet/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcelklehr%2Fmagnet/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267156046,"owners_count":24044407,"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","status":"online","status_checked_at":"2025-07-26T02:00:08.937Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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-01T19:01:47.688Z","updated_at":"2025-07-26T11:14:05.946Z","avatar_url":"https://github.com/marcelklehr.png","language":"JavaScript","funding_links":[],"categories":["Uncategorized"],"sub_categories":["Uncategorized"],"readme":"#  Magnet\n### An \u003cdel\u003einterpreted\u003c/del\u003e awesome programming language\n\nMagnet is an object-oriented programming language, that is prototype-based to the point of real types being absent in favor of duck types.  \nE.g. every object providing a `read` method that returns a readable, is considered \"readable\" (meaning it can represent a string). Since this causes a recursion, there must be some \"primal\" readable to end that: Such primal readable is also known as a String Object in Magnet.\n\nFurthermore, Magnet is syntax driven. This means: Everything that can be done to reduce code, retain simplicity and to amaze the developer, IS done!\n\n## Example\n```\n5 * {puts '5 times'}\n```\nDisplays '5 times' five times.\n\n```\n'Hello':split.each({char :: puts char})\n```\nDisplays 'Hello', with each character on a new line.\n\nLearn more about Magnet in [the docs](http://github.com/marcelklehr/magnet/wiki/docs).\n\n## Install\nIf you have [npm](http://npmjs.org/), just do: `npm install -g magnet`\n\nThat's it! Now try `magnet test.mg`, after copying the [test file](https://github.com/marcelklehr/magnet/blob/develop/sample/test.mg) to `test.mg`.\n\n### Installing from source\n1. Download Magnet ([stable](https://github.com/marcelklehr/magnet/zipball/master) or [bleeding edge (recommended)](https://github.com/marcelklehr/magnet/zipball/develop)), or grab the repo using `git clone git://github.com/marcelklehr/magnet.git`\n2. Run `make`.\n\nNow try `$ ./bin/magnet sample/test.mg`  \nor `\u003e node bin/magnet sample/test.mg` on windows\n\n## License\nCopyright (c) 2012 by Marcel Klehr  \nMIT License (see `LICENSE`)\n\n### Third-party software\nThis software uses a slightly modified version of JS/CC - A LALR(1) Parser Generator written in JavaScript (contained in `/jscc`)  \nCopyright (c) 2007, 2008 by J.M.K S.F. Software Technologies, Jan Max Meyer jscc!AT!jmksf.com, http://www.jmksf.com  \n3-clause BSD License (see `jscc/jscc.js` for more information)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcelklehr%2Fmagnet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarcelklehr%2Fmagnet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcelklehr%2Fmagnet/lists"}