{"id":18579390,"url":"https://github.com/msm-code/pseudobf","last_synced_at":"2025-05-16T02:34:52.721Z","repository":{"id":18280039,"uuid":"21445927","full_name":"msm-code/PseudoBF","owner":"msm-code","description":null,"archived":false,"fork":false,"pushed_at":"2014-07-05T00:55:14.000Z","size":952,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-17T15:52:11.814Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/msm-code.png","metadata":{"files":{"readme":"README.md","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":"2014-07-03T01:29:38.000Z","updated_at":"2014-07-03T01:40:45.000Z","dependencies_parsed_at":"2022-08-28T08:41:20.187Z","dependency_job_id":null,"html_url":"https://github.com/msm-code/PseudoBF","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msm-code%2FPseudoBF","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msm-code%2FPseudoBF/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msm-code%2FPseudoBF/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msm-code%2FPseudoBF/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/msm-code","download_url":"https://codeload.github.com/msm-code/PseudoBF/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254456095,"owners_count":22074100,"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-11-06T23:40:36.911Z","updated_at":"2025-05-16T02:34:52.641Z","avatar_url":"https://github.com/msm-code.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"PseudoBF\n========\n\nPseudoBF is simple language, that compiles to brainfuck itself. That is, you can write simple code similar to that:\n\n```\nfunction compare(varA, varB) {\n     if (varA == varB) {\n         print(\"equal. \");\n     } else { \n         print(\"not equal. \");\n     }\n}\n\nfunction main() : locals(a, b, c) {\n    a = 7;\n\n    print(\"Compare a to 5: \");\n    compare(a, 5);\n\n    print(\"Compare a to 7: \");\n    compare(a, 7);\n}\n```\n\nAnd feed it into PseudoBF compiler, to get equivalent code... In brainfuck!\n\n```\n\u003e[-]+++++++\u003e\u003e\u003e[-]+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n++++.++++++++++++++++++++++++++++++++++++++++++++.--.+++.---------------.+++++++\n++++++++++.-------------.-------------------------------------------------------\n--------------.+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n.-----------------------------------------------------------------.+++++++++++++\n+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.-----.--\n-----------------------------------------------------------------------------.++\n+++++++++++++++++++.+++++.--------------------------.\u003e\u003e\u003e\u003e[-]\u003c\u003c[-]\u003c\u003c\u003c\u003c\u003c[\u003e\u003e\u003e\u003e\u003e+\u003e\u003e+\n\u003c\u003c\u003c\u003c\u003c\u003c\u003c-]\u003e\u003e\u003e\u003e\u003e\u003e\u003e[\u003c\u003c\u003c\u003c\u003c\u003c\u003c+\u003e\u003e\u003e\u003e\u003e\u003e\u003e-]\u003c[-]+++++\u003c\u003c\u003e\u003e\u003e[-]\u003c\u003c\u003c[-]\u003e[\u003c+\u003e\u003e\u003e+\u003c\u003c-]\u003e\u003e[\u003c\u003c+\u003e\u003e-][\n-]\u003e[-]\u003c\u003c\u003c\u003c[\u003e\u003e\u003e\u003e+\u003c\u003c\u003c\u003c-]+\u003e\u003e[\u003e+\u003e-\u003c\u003c-]\u003e[\u003c+\u003e-]\u003e[\u003c\u003c\u003c\u003c-\u003e\u003e\u003e\u003e[-]]\u003c[-]\u003e[-]\u003c\u003c\u003c\u003c[\u003e\u003e\u003e+\u003e+\u003c\u003c\u003c\u003c-\n]\u003e\u003e\u003e[\u003c\u003c\u003c+\u003e\u003e\u003e-]+\u003e[\u003e[-]+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n++++++++++++++++++++++++++++++++++++++++++.++++++++++++.++++.-------------------\n-.+++++++++++.--------------------------------------------------------------.---\n-----------.\u003c\u003c-\u003e[-]]\u003c[\u003e\u003e\u003e[-]++++++++++++++++++++++++++++++++++++++++++++++++++++\n++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.+.+++++.-------------\n-----------------------------------------------------------------------.++++++++\n+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.++++++++++++.++++.\n--------------------.+++++++++++.-----------------------------------------------\n---------------.--------------.\u003c\u003c\u003c-]\u003c\u003c\u003c[-]++++++++++++++++++++++++++++++++++++++\n+++++++++++++++++++++++++++++.++++++++++++++++++++++++++++++++++++++++++++.--.++\n+.---------------.+++++++++++++++++.-------------.------------------------------\n---------------------------------------.++++++++++++++++++++++++++++++++++++++++\n+++++++++++++++++++++++++.------------------------------------------------------\n-----------.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n++++++++++++++++.-----.---------------------------------------------------------\n----------------------.+++++++++++++++++++++++.+++.--------------------------.\u003e\u003e\n\u003e\u003e[-]\u003c\u003c[-]\u003c\u003c\u003c\u003c\u003c\u003c[\u003e\u003e\u003e\u003e\u003e\u003e+\u003e\u003e+\u003c\u003c\u003c\u003c\u003c\u003c\u003c\u003c-]\u003e\u003e\u003e\u003e\u003e\u003e\u003e\u003e[\u003c\u003c\u003c\u003c\u003c\u003c\u003c\u003c+\u003e\u003e\u003e\u003e\u003e\u003e\u003e\u003e-]\u003c[-]+++++++\u003c\u003c\u003e\u003e\n\u003e[-]\u003c\u003c\u003c[-]\u003e[\u003c+\u003e\u003e\u003e+\u003c\u003c-]\u003e\u003e[\u003c\u003c+\u003e\u003e-][-]\u003e[-]\u003c\u003c\u003c\u003c[\u003e\u003e\u003e\u003e+\u003c\u003c\u003c\u003c-]+\u003e\u003e[\u003e+\u003e-\u003c\u003c-]\u003e[\u003c+\u003e-]\u003e[\u003c\u003c\u003c\u003c\n-\u003e\u003e\u003e\u003e[-]]\u003c[-]\u003e[-]\u003c\u003c\u003c\u003c[\u003e\u003e\u003e+\u003e+\u003c\u003c\u003c\u003c-]\u003e\u003e\u003e[\u003c\u003c\u003c+\u003e\u003e\u003e-]+\u003e[\u003e[-]++++++++++++++++++++++++++\n+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.++++\n++++++++.++++.--------------------.+++++++++++.---------------------------------\n-----------------------------.--------------.\u003c\u003c-\u003e[-]]\u003c[\u003e\u003e\u003e[-]+++++++++++++++++++\n++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n+++++++++++.+.+++++.------------------------------------------------------------\n------------------------.+++++++++++++++++++++++++++++++++++++++++++++++++++++++\n++++++++++++++.++++++++++++.++++.--------------------.+++++++++++.--------------\n------------------------------------------------.--------------.\u003c\u003c\u003c-]\u003c\u003c\u003c\u003c\u003c\u003c\n```\n\nAfter executing above code in any brainfuck interpreter, we get expected optput:\n\n```\nCompare a to 5: not equal. Compare a to 7: equal.\n```\n\nNote: this project is outdated. See also PseudoBF2 project, which is complete\nground-up rewrite of this idea but better designed, more complete, and more extensible.\nhttps://github.com/msm-code/PseudoBF2\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmsm-code%2Fpseudobf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmsm-code%2Fpseudobf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmsm-code%2Fpseudobf/lists"}