Subject: Re: bug#68246: 30.0.50; Add non-TS mode as extra parent of TS modes

From: Dmitry Gutov <[email-masked]>
Date: Sat, 20 Jan 2024 07:47:27 +0200

On 19/01/2024 07:12, Yuan Fu wrote:
> 
>> On Jan 15, 2024, at 6:32 PM, Stefan Monnier<[email-masked]>  wrote:
>>
>>>> Please don't call it "language".  That'd be confusing.  LSP is about
>>>> programming languages, so "language" is natural there.  But in Emacs,
>>>> a major mode is more general than that.  For example, it is not
>>>> unthinkable to consider mail-mode to be the extra-parent of
>>>> message-mode (or vice versa) -- but what is the "language" in that
>>>> case?
>>> Isn't the language for such modes in this paradigm just the empty set?
>> I'm not too worried about those cases, indeed.
>> I'm more worried about the taxonomy of languages.
>> We currently have the taxonomy of major modes, with which we're pretty
>> familiar, and we've had many years to learn about its downsides,
>> complexity, as well as how to deal with them, but for languages we're
>> only familiar with the easy cases, which makes us judge the idea in
>> a way that may prove naive.
> I don’t have anything insightful to contribute, but want to point out that in Emacs, “language” doesn’t always mean programming language. “Language” can also mean Chinese, English, etc, and Emacs are quite often used for editing natural language text. So it warrants some caution when using “language” to mean programming language specifically.

That's a good point.

But hopefully when the suffix -lang or -language is used in the symbol 
name, the preceding word(s) will make it unambiguous. But the mentions 
of "language" in the documentation would have to be more careful indeed 
(perhaps we'd call them "content type" after all, and :ruby-lang would 
be one of the content types).