unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Comment in verilog-mode.el about supported versions
@ 2016-12-19 11:49 Tino Calancha
  2016-12-19 13:02 ` Kaushal Modi
  2016-12-19 13:47 ` Stefan Monnier
  0 siblings, 2 replies; 9+ messages in thread
From: Tino Calancha @ 2016-12-19 11:49 UTC (permalink / raw)
  To: Emacs developers; +Cc: tino.calancha


Hi,

in the comentary of
lisp/progmodes/verilog-mode.el
you can find following comment:
;;    This code supports Emacs 21.1 and later
;;    And XEmacs 21.1 and later
;;    Please do not make changes that break Emacs 21.  Thanks!

I could understand this comment in a version of this file
elsewhere, e.g. ELPA, but not in the built-in version in Emacs.
Why is this comment needed?
Is it OK to drop from the master branch this kind of comments?

Thanks,
Tino



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Comment in verilog-mode.el about supported versions
  2016-12-19 11:49 Tino Calancha
@ 2016-12-19 13:02 ` Kaushal Modi
  2016-12-19 13:09   ` Noam Postavsky
  2016-12-19 13:47 ` Stefan Monnier
  1 sibling, 1 reply; 9+ messages in thread
From: Kaushal Modi @ 2016-12-19 13:02 UTC (permalink / raw)
  To: wsnyder, Emacs developers; +Cc: Tino Calancha

[-- Attachment #1: Type: text/plain, Size: 611 bytes --]

Copying Wilson Snyder.

On Mon, Dec 19, 2016, 5:19 PM Tino Calancha <tino.calancha@gmail.com> wrote:

>
> Hi,
>
> in the comentary of
> lisp/progmodes/verilog-mode.el
> you can find following comment:
> ;;    This code supports Emacs 21.1 and later
> ;;    And XEmacs 21.1 and later
> ;;    Please do not make changes that break Emacs 21.  Thanks!
>
> I could understand this comment in a version of this file
> elsewhere, e.g. ELPA, but not in the built-in version in Emacs.
> Why is this comment needed?
> Is it OK to drop from the master branch this kind of comments?
>
> Thanks,
> Tino
>
> --

Kaushal Modi

[-- Attachment #2: Type: text/html, Size: 1352 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Comment in verilog-mode.el about supported versions
  2016-12-19 13:02 ` Kaushal Modi
@ 2016-12-19 13:09   ` Noam Postavsky
  0 siblings, 0 replies; 9+ messages in thread
From: Noam Postavsky @ 2016-12-19 13:09 UTC (permalink / raw)
  To: Kaushal Modi; +Cc: Emacs developers, Tino Calancha, wsnyder

On Mon, Dec 19, 2016 at 8:02 AM, Kaushal Modi <kaushal.modi@gmail.com> wrote:
> Copying Wilson Snyder.
>
> On Mon, Dec 19, 2016, 5:19 PM Tino Calancha <tino.calancha@gmail.com> wrote:
>>
>>
>> Hi,
>>
>> in the comentary of
>> lisp/progmodes/verilog-mode.el
>> you can find following comment:
>> ;;    This code supports Emacs 21.1 and later
>> ;;    And XEmacs 21.1 and later
>> ;;    Please do not make changes that break Emacs 21.  Thanks!
>>
>> I could understand this comment in a version of this file
>> elsewhere, e.g. ELPA, but not in the built-in version in Emacs.
>> Why is this comment needed?
>> Is it OK to drop from the master branch this kind of comments?

This reminds me, I posted a patch to fix a bug in verilog-mode, but
left it unapplied because I wasn't sure about backwards compatibility:
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23842#62



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Comment in verilog-mode.el about supported versions
@ 2016-12-19 13:37 Wilson Snyder
  2016-12-19 14:02 ` Tino Calancha
  0 siblings, 1 reply; 9+ messages in thread
From: Wilson Snyder @ 2016-12-19 13:37 UTC (permalink / raw)
  To: Noam Postavsky; +Cc: emacs-devel, tino.calancha, kaushal.modi


>> On Mon, Dec 19, 2016, 5:19 PM Tino Calancha <tino.calancha@gmail.com> wrote:
>>>
>>> in the comentary of
>>> lisp/progmodes/verilog-mode.el
>>> you can find following comment:
>>> ;;    This code supports Emacs 21.1 and later
>>> ;;    And XEmacs 21.1 and later
>>> ;;    Please do not make changes that break Emacs 21.  Thanks!
>>>
>>> I could understand this comment in a version of this file
>>> elsewhere, e.g. ELPA, but not in the built-in version in Emacs.
>>> Why is this comment needed?
>>> Is it OK to drop from the master branch this kind of comments?

Please retain this, this entire file is identical with that
used on other versions of Emacs. It would be otherwise
be nearly impossible to manage diverging files.

>This reminds me, I posted a patch to fix a bug in verilog-mode, but
>left it unapplied because I wasn't sure about backwards compatibility:
>https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23842#62

Thanks for your improvements.

It's perhaps reasonable to break a small number of things in
say Emacs 21, but this patch also breaks Emacs 23.1, which
is still relatively widely deployed for those on Redhat
distros, such as at my employer.

Perhaps the patch can be made backward compatible by
e.g. having verilog-complete-word be a defmacro to call the
standard functions when they are defined?  There's a bunch
of similar hackary see the many eval-and-compile blocks.
I'm not personally familiar with the completion part of
verilog-mode nor the related Emacs functions, or I'd do it.

-Wilson



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Comment in verilog-mode.el about supported versions
  2016-12-19 11:49 Tino Calancha
  2016-12-19 13:02 ` Kaushal Modi
@ 2016-12-19 13:47 ` Stefan Monnier
  1 sibling, 0 replies; 9+ messages in thread
From: Stefan Monnier @ 2016-12-19 13:47 UTC (permalink / raw)
  To: emacs-devel

> I could understand this comment in a version of this file
> elsewhere, e.g. ELPA, but not in the built-in version in Emacs.
> Why is this comment needed?
> Is it OK to drop from the master branch this kind of comments?

This package is sync'd with the externally maintained verilog-mode.el
(same as for vhdl-mode, IIRC).  The better way to do it would be to have
this as a GNU ELPA package, and then bundle it in Emacs's tarball,
but this plan is still just a plan...


        Stefan




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Comment in verilog-mode.el about supported versions
  2016-12-19 13:37 Wilson Snyder
@ 2016-12-19 14:02 ` Tino Calancha
  2016-12-19 15:02   ` Stefan Monnier
  0 siblings, 1 reply; 9+ messages in thread
From: Tino Calancha @ 2016-12-19 14:02 UTC (permalink / raw)
  To: Wilson Snyder
  Cc: kaushal.modi, Emacs developers, Tino Calancha, Noam Postavsky



On Mon, 19 Dec 2016, Wilson Snyder wrote:

>
>>> On Mon, Dec 19, 2016, 5:19 PM Tino Calancha <tino.calancha@gmail.com> wrote:
>>>>
>>>> in the comentary of
>>>> lisp/progmodes/verilog-mode.el
>>>> you can find following comment:
>>>> ;;    This code supports Emacs 21.1 and later
>>>> ;;    And XEmacs 21.1 and later
>>>> ;;    Please do not make changes that break Emacs 21.  Thanks!
>>>>
>>>> I could understand this comment in a version of this file
>>>> elsewhere, e.g. ELPA, but not in the built-in version in Emacs.
>>>> Why is this comment needed?
>>>> Is it OK to drop from the master branch this kind of comments?
>
> Please retain this, this entire file is identical with that
> used on other versions of Emacs. It would be otherwise
> be nearly impossible to manage diverging files.
Sorry, I don't understand why it should be difficult or what makes more 
difficult to handle this file that, for instance tramp or cc-mode.

Wouldn't it better to keep one verilog-mode.el version in ELPA 
fully compatible with Emacs-21?
And let the file in the master branch to benefit of all that
has come since Emacs-21?

I also notice that the file is very large (> 14 klines).
Maybe it would be easier to maintain if the file is split in 4-5 files.

Regards,
Tino



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Comment in verilog-mode.el about supported versions
@ 2016-12-19 14:32 Wilson Snyder
  2016-12-19 15:35 ` Tino Calancha
  0 siblings, 1 reply; 9+ messages in thread
From: Wilson Snyder @ 2016-12-19 14:32 UTC (permalink / raw)
  To: Tino Calancha; +Cc: kaushal.modi, emacs-devel, tino.calancha, npostavs


>On Mon, 19 Dec 2016, Wilson Snyder wrote:
>
>>
>>>> On Mon, Dec 19, 2016, 5:19 PM Tino Calancha <tino.calancha@gmail.com> wrote:
>>>>>
>>>>> in the comentary of
>>>>> lisp/progmodes/verilog-mode.el
>>>>> you can find following comment:
>>>>> ;;    This code supports Emacs 21.1 and later
>>>>> ;;    And XEmacs 21.1 and later
>>>>> ;;    Please do not make changes that break Emacs 21.  Thanks!
>>>>>
>>>>> I could understand this comment in a version of this file
>>>>> elsewhere, e.g. ELPA, but not in the built-in version in Emacs.
>>>>> Why is this comment needed?
>>>>> Is it OK to drop from the master branch this kind of comments?
>>
>> Please retain this, this entire file is identical with that
>> used on other versions of Emacs. It would be otherwise
>> be nearly impossible to manage diverging files.
>Sorry, I don't understand why it should be difficult or what makes more 
>difficult to handle this file that, for instance tramp or cc-mode.
>
>Wouldn't it better to keep one verilog-mode.el version in ELPA 
>fully compatible with Emacs-21?
>And let the file in the master branch to benefit of all that
>has come since Emacs-21?
>
>I also notice that the file is very large (> 14 klines).
>Maybe it would be easier to maintain if the file is split in 4-5 files.

Verilog-mode is a bit unique.  It's not just a programming
mode that is used inside Emacs, but a computer aided design
tool that extends the Verilog language, relied on in most
every chip design company, and often run as a standalone
tool from Emacs batch.

Thus there are often important bugs which need to be fixed
back into what would otherwise be considered "old" Emacs
versions. cc-mode and like doesn't have this issue.

Also because of this, verilog-mode.el is often part of the
source code control system of design environments, which
need to run regardless that different users and systems may
have different Emacs versions installed.

Users often upgrade verilog-mode.el themselves, and so
having a single file, that they can easily install and know
will work, no matter their version of Emacs, is critical.

Perhaps this path is more development work (though due to
version maintenance effort I'd argue that). But, I don't see
any way in which splitting versions nor splitting files
would help the users.

Anyhow, regardless of these choices, new Emacs features are
made available.  By no means is the least common denominator
all that is supported.

-Wilson



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Comment in verilog-mode.el about supported versions
  2016-12-19 14:02 ` Tino Calancha
@ 2016-12-19 15:02   ` Stefan Monnier
  0 siblings, 0 replies; 9+ messages in thread
From: Stefan Monnier @ 2016-12-19 15:02 UTC (permalink / raw)
  To: emacs-devel

> Sorry, I don't understand why it should be difficult or what makes more
> difficult to handle this file that, for instance tramp or cc-mode.

Note that the cc-mode in Emacs is also full of compatibility code (and
the fact that it's not 100% identical to the code distributed separately
is a serious problem that has caused Alan to reject some changes simply
because they were too hard to sync back to the other version).

Having compatibility code is normal and accepted.  It's more important
to make maintenance easy than to streamline the Emacs's builtin code.

> Wouldn't it better to keep one verilog-mode.el version in ELPA fully
> compatible with Emacs-21?
> And let the file in the master branch to benefit of all that
> has come since Emacs-21?

It's better to have a single version for both cases.  It does not mean
that you can't benefit from all that has come since Emacs-21 (well,
maybe in some cases you can't benefit from 100% but still a very large
percentage).

> I also notice that the file is very large (> 14 klines).
> Maybe it would be easier to maintain if the file is split in 4-5 files.

A single file also has its benefits (I don't have an opinion either way,
really: just pointing out that it's a very valid choice as well).


        Stefan




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Comment in verilog-mode.el about supported versions
  2016-12-19 14:32 Comment in verilog-mode.el about supported versions Wilson Snyder
@ 2016-12-19 15:35 ` Tino Calancha
  0 siblings, 0 replies; 9+ messages in thread
From: Tino Calancha @ 2016-12-19 15:35 UTC (permalink / raw)
  To: Wilson Snyder; +Cc: kaushal.modi, npostavs, Emacs developers, Tino Calancha



On Mon, 19 Dec 2016, Wilson Snyder wrote:

> Verilog-mode is a bit unique.  It's not just a programming
> mode that is used inside Emacs, but a computer aided design
> tool that extends the Verilog language, relied on in most
> every chip design company, and often run as a standalone
> tool from Emacs batch.
>
> Thus there are often important bugs which need to be fixed
> back into what would otherwise be considered "old" Emacs
> versions. cc-mode and like doesn't have this issue.
>
> Also because of this, verilog-mode.el is often part of the
> source code control system of design environments, which
> need to run regardless that different users and systems may
> have different Emacs versions installed.
>
> Users often upgrade verilog-mode.el themselves, and so
> having a single file, that they can easily install and know
> will work, no matter their version of Emacs, is critical.
>
> Perhaps this path is more development work (though due to
> version maintenance effort I'd argue that). But, I don't see
> any way in which splitting versions nor splitting files
> would help the users.
>
> Anyhow, regardless of these choices, new Emacs features are
> made available.  By no means is the least common denominator
> all that is supported.
>
> -Wilson

Understood.
Thank you very much for your detailed explanation.

Tino



^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2016-12-19 15:35 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-19 14:32 Comment in verilog-mode.el about supported versions Wilson Snyder
2016-12-19 15:35 ` Tino Calancha
  -- strict thread matches above, loose matches on Subject: below --
2016-12-19 13:37 Wilson Snyder
2016-12-19 14:02 ` Tino Calancha
2016-12-19 15:02   ` Stefan Monnier
2016-12-19 11:49 Tino Calancha
2016-12-19 13:02 ` Kaushal Modi
2016-12-19 13:09   ` Noam Postavsky
2016-12-19 13:47 ` Stefan Monnier

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).