freenode
Desktop & Graphics

Emacs holds LLM Hunspell port over maintenance and GPL doubts

A pure-Elisp spellchecker translated from C++ by a language model faces delay on Non-GNU ELPA amid review, upkeep, and corresponding-source questions.

Augusto Stoffel has asked to place vibe-spell on Non-GNU ELPA: a pure Emacs Lisp reimplementation of Hunspell produced by iteratively translating C++ until the upstream tests passed. He pitches it as a library for packages such as jit-spell, avoiding both the slow classic ispell subprocess protocol and the need to compile a native module.

Philip Kaludercic urged a pause. An informal practice, he noted, is to wait at least a month after an LLM-generated package appears so that day-to-day use and long-term maintenance interest can be judged. At nearly three thousand lines the review load is large, and he asked whether any of the code would be rewritten by hand. Sean Whitton backed the delay.

Stoffel replied that he had already run the library himself for about a month. He described the work as a mechanical translation rather than assisted authorship: "The code in a way doesn't matter, and I only looked cursorily at it." Docstrings were deliberately left as comments so users would not see generated prose. The practical gain, he argued, is speed. The ispell interface cannot skip suggestion generation for every misspelling, which he called orders of magnitude slower than a plain check, while linking a spell library into Emacs or offering a general FFI has not happened and not every user can build a dynamic module.

Eli Zaretskii raised a licensing objection. If the Elisp is effectively the product of a non-conventional translation from C++, the package should ship the Hunspell sources used, the prompts, and the scripts needed to regenerate it, so a later change could be patched upstream and re-translated. He treated that as a basic GPL corresponding-source duty.

Stoffel rejected the compiler framing and called the result a rewrite whose editable Lisp is the source. Christine Lemmer-Webber warned that pushing the regeneration view further could shut vibecoded software out of Emacs entirely, because corresponding source might swell to include model training data. Zaretskii answered that the minimum required material is still unsettled and that legal questions around LLM-generated code continue to take a long time.

The package remains off the archive for now.