{"id":18518055,"url":"https://github.com/cyotek/langtonsantsimulator","last_synced_at":"2025-07-02T00:03:15.673Z","repository":{"id":148117721,"uuid":"296822695","full_name":"cyotek/LangtonsAntSimulator","owner":"cyotek","description":"A Langton's ant simulator written in C#","archived":false,"fork":false,"pushed_at":"2020-09-19T08:34:34.000Z","size":374,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-10T02:16:29.631Z","etag":null,"topics":["csharp","langtons-ant","simulation"],"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/cyotek.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-09-19T08:34:26.000Z","updated_at":"2024-11-06T00:15:25.000Z","dependencies_parsed_at":"2023-05-19T04:45:43.334Z","dependency_job_id":null,"html_url":"https://github.com/cyotek/LangtonsAntSimulator","commit_stats":{"total_commits":3,"total_committers":1,"mean_commits":3.0,"dds":0.0,"last_synced_commit":"7c452e51b6012b0d1a852c9d32e6934c5f5d84ac"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/cyotek/LangtonsAntSimulator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cyotek%2FLangtonsAntSimulator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cyotek%2FLangtonsAntSimulator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cyotek%2FLangtonsAntSimulator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cyotek%2FLangtonsAntSimulator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cyotek","download_url":"https://codeload.github.com/cyotek/LangtonsAntSimulator/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cyotek%2FLangtonsAntSimulator/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263052430,"owners_count":23406104,"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":["csharp","langtons-ant","simulation"],"created_at":"2024-11-06T17:11:18.504Z","updated_at":"2025-07-02T00:03:15.605Z","avatar_url":"https://github.com/cyotek.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Langton's ant simulator\n\n![The running simulation][6]\n\nThis is my second implementation of a Langton's ant simulator,\nthis time written in C#. I wrote it in 2011 for a [C# Helper\ncontest][5].\n\n## About Langton's ant\n\nLangton's ant is a two-dimensional universal Turing machine with\na very simple set of rules but complex emergent behavior.\n\nSquares on a plane are colored variously either black or white.\nWe arbitrarily identify one square as the \"ant\". The ant can\ntravel in any of the four cardinal directions at each step it\ntakes. The \"ant\" moves according to the rules below:\n\n* At a white square, turn 90° clockwise, flip the color of the\n  square, move forward one unit\n* At a black square, turn 90° counter-clockwise, flip the color\n  of the square, move forward one unit\n\n(Paraphrased from the [Wikipedia][1] page)\n\n## About the code\n\nI haven't looked at this code in years, but I remember that I\n_horribly_ over-engineered the thing originally. Interfaces\neverywhere!\n\nHowever, I fired it up to take the screenshot at the top of this\ndocument and it still works perfectly fine.\n\n![Simulation of twenty ants after 4000 moves][3]\n\n![Simulation of twenty ants after 15000 moves][4]\n\n## Acknowledgements\n\n* Rod Stephens of [C# Helper][8] for the idea in the first place\n  (although I'm almost certain this is the second Langton's ant\n  simulator I made, I'm sure I did one in Visual Basic 6,\n  probably also for a Rod Stephens competition!)\n* The ant icon used by the program by [Martin Berube][7]\n* [Yusuke Kamiyamane's][8] Fugue Icons\n\n[1]: https://en.wikipedia.org/wiki/Langton's_ant\n[2]: 1%20ant%20move%2015000.png\n[3]: 20%20ants%20move%204000.png\n[4]: 20%20ants%20move%2015000.png\n[5]: http://csharphelper.com/blog/2011/02/contest-langtons-ant-simulation/\n[6]: simulation11000.png\n[7]: http://www.iconarchive.com/show/animal-icons-by-martin-berube/ant-icon.html\n[8]: http://p.yusukekamiyamane.com/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcyotek%2Flangtonsantsimulator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcyotek%2Flangtonsantsimulator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcyotek%2Flangtonsantsimulator/lists"}