{"id":20424621,"url":"https://github.com/bahmanm/bjforth","last_synced_at":"2025-09-24T08:31:34.103Z","repository":{"id":38015282,"uuid":"445673401","full_name":"bahmanm/bjforth","owner":"bahmanm","description":"Bahman's Forth on the JVM","archived":false,"fork":false,"pushed_at":"2025-01-08T15:17:54.000Z","size":1351,"stargazers_count":2,"open_issues_count":8,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-08T16:43:09.183Z","etag":null,"topics":["concatenative","forth","java","jvm"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bahmanm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","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":"2022-01-07T22:57:05.000Z","updated_at":"2025-01-04T04:53:57.000Z","dependencies_parsed_at":"2023-01-31T05:00:23.718Z","dependency_job_id":"30bbeb3a-7eac-4e37-ba64-7d9133709f9c","html_url":"https://github.com/bahmanm/bjforth","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bahmanm%2Fbjforth","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bahmanm%2Fbjforth/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bahmanm%2Fbjforth/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bahmanm%2Fbjforth/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bahmanm","download_url":"https://codeload.github.com/bahmanm/bjforth/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234057872,"owners_count":18772848,"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":["concatenative","forth","java","jvm"],"created_at":"2024-11-15T07:10:15.515Z","updated_at":"2025-09-24T08:31:28.654Z","avatar_url":"https://github.com/bahmanm.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# bjForth\n\n[![CircleCI](https://dl.circleci.com/status-badge/img/circleci/UMKeFZ8ns9T9vi5aquTfVT/FnGnFZDJWi8uY7zNYvkuvb/tree/master.svg?style=shield\u0026circle-token=69b804abc3b70a380cfb416d80ce8d36e5ad2334)](https://dl.circleci.com/status-badge/redirect/circleci/UMKeFZ8ns9T9vi5aquTfVT/FnGnFZDJWi8uY7zNYvkuvb/tree/master)\n[![codecov](https://codecov.io/gh/bahmanm/bjforth/graph/badge.svg?token=KPSFFI2H9G)](https://codecov.io/gh/bahmanm/bjforth)\n![GitHub commit activity](https://img.shields.io/github/commit-activity/m/bahmanm/bjforth)\n![GitHub Downloads (all assets, all releases)](https://img.shields.io/github/downloads/bahmanm/bjforth/total?color=0e80c1)\n[![Matrix](https://img.shields.io/matrix/bjforth%3Amatrix.org?server_fqdn=matrix.org\u0026style=flat\u0026logo=matrix\u0026color=%230e80c0)](https://matrix.to/#/#github-bahmanm-bjforth:matrix.org)\n[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)\n[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fbahmanm%2Fbjforth.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Fbahmanm%2Fbjforth?ref=badge_shield)\n\nbjForth which stands for _Bahman's Forth on the JVM_ is an attempt at writing a Forth which\nwould allow the programmer to tap into the JVM and its ecosystem.\n\nThe idea came to my mind in 2014-2015, but I never had the time nor the understanding of how\na Forth is implemented. \n\n- [Thoughts on JVM-based Forth Implementation (2014)](https://www.bahmanm.com/2015/01/more-thoughts-on-jvm-based-forth.html)\n- [More Thoughts on A JVM-based Forth (2015)](https://www.bahmanm.com/2015/01/more-thoughts-on-jvm-based-forth.html)\n\nThen in 2022, I sat down and read the source of [JONESFORTH](http://git.annexia.org/?p=jonesforth.git;a=summary) which is a rather minimal and amasingly well-documented Forth implementation! \n\nAfter that I knew what to do!\n\n# How to run\n\nAs bjForth is written with Java, all you need is JDK 21 installed.\n\nThen to launch bjForth:\n\n```\n$ ./bjForth\n\nbjForth \u003chttps://github.com/bahmanm/bjforth\u003e\n⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯\n\n```\n\nOr you could include your own library:\n\n```\n$ ./bjForth my-lib.forth\n\nbjForth \u003chttps://github.com/bahmanm/bjforth\u003e\n⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯\n```\n\n# Documentation \n\n* [List of all words included in the distribution](docs/Words.md)\n* [Java inter-op](docs/Java%20Inter-op.md)\n\n\n# Roadmap\n\n## v1.0.0\n\n- Java inter-op (instance creation and method call)\n- A set of libraries with commonly used words (`bjForth.forth`)\n\n## v2.0.0 (Tentative)\n\n- ANSI Forth compatibility\n\n## v3.0.0 (Tentative)\n\n- Java inter-op (lambdas)\n\n---\n\n## License\n[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fbahmanm%2Fbjforth.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fbahmanm%2Fbjforth?ref=badge_large)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbahmanm%2Fbjforth","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbahmanm%2Fbjforth","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbahmanm%2Fbjforth/lists"}