Skip to content

Remove abandoned javatools_backend and Makefile#389

Merged
lagergren merged 1 commit intomasterfrom
lagergren/remove-java-backend
Feb 11, 2026
Merged

Remove abandoned javatools_backend and Makefile#389
lagergren merged 1 commit intomasterfrom
lagergren/remove-java-backend

Conversation

@lagergren
Copy link
Contributor

@lagergren lagergren commented Feb 11, 2026

Summary

  • Removes the javatools_backend/ directory — an on-hold project to compile XTC into Java source code
  • Removes the Makefile — a parallel build system to Gradle that existed primarily to support the backend workflow and had no remaining unique functionality
  • 239 files deleted, ~20k lines removed

Motivation

We want to keep the XVM reference implementation repo as clean and focused as possible. The javatools_backend was not integrated into the Gradle build, had no dependencies from anywhere else in the project, and contained no reusable assets (no .x files, no code imported by other modules). The Makefile duplicated what Gradle already handles and was primarily the entry point for the backend experiment.

Removing dead code reduces cognitive overhead for contributors and keeps the repo focused on its core purpose: the XVM reference implementation.

Nothing is lost

This code remains fully available in Git history. To browse, search, or restore it at any time:

# Browse the directory as it was before this PR
git show master:javatools_backend/

# View a specific file
git show master:javatools_backend/src/main/java/org/xvm/XEC.java

# Restore the entire directory to your working tree
git checkout master -- javatools_backend/

# Search the old code for a pattern
git log -p --all -S 'pattern' -- javatools_backend/

You can also browse it on GitHub by navigating to any commit prior to this merge.

Future direction

As the XVM project matures past the alpha phase, other components that are not directly part of the XVM itself may be decoupled and migrated to their own repositories. For example, the lang/ tree (which implements language support bindings — tree-sitter grammars, LSP server, VS Code extension, IntelliJ plugin, Emacs mode) is a natural candidate for its own repo. For now, it remains tightly coupled to the rest of the build to ensure full integration and enable rapid development during the alpha.

Test plan

  • Verified no Gradle files, settings, CI configs, or source code outside javatools_backend/ reference it
  • Verified .gitignore has no entries specific to the backend
  • Grep confirms zero remaining references to javatools_backend in the repo

The javatools_backend was an abandoned experiment to compile XTC into
Java source. It had no dependencies from the rest of the project and
contained no reusable assets. The Makefile was a parallel build system
to Gradle used primarily for the backend workflow, with no remaining
unique functionality.
@lagergren lagergren requested review from cpurdy and ggleyzer February 11, 2026 15:33
Copy link
Collaborator

@ggleyzer ggleyzer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Go for it

@lagergren lagergren merged commit 32c5307 into master Feb 11, 2026
4 checks passed
@lagergren lagergren deleted the lagergren/remove-java-backend branch February 11, 2026 15:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants