comp.lang.ada
 help / color / mirror / Atom feed
* Gnu Emacs Ada mode 6.0.0 released
@ 2018-12-03 18:57 Stephen Leake
  2018-12-03 20:07 ` Shark8
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Stephen Leake @ 2018-12-03 18:57 UTC (permalink / raw)


Gnu Emacs Ada mode 6.0.0 is now available in GNU ELPA. See the
homepage (http://www.nongnu.org/ada-mode/) for news.

This is a major release; an error correcting parser written in Ada is
provided, and the grammar actions have been rewritten to implement
indentation more efficiently. The Ada parser is useable on very large
files. The elisp parser is still available, but does not provide error
correction.


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

* Re: Gnu Emacs Ada mode 6.0.0 released
  2018-12-03 18:57 Gnu Emacs Ada mode 6.0.0 released Stephen Leake
@ 2018-12-03 20:07 ` Shark8
  2018-12-04  0:25 ` Dan'l Miller
  2018-12-05 18:51 ` julian.fondren
  2 siblings, 0 replies; 7+ messages in thread
From: Shark8 @ 2018-12-03 20:07 UTC (permalink / raw)


On Monday, December 3, 2018 at 11:57:50 AM UTC-7, Stephen Leake wrote:
> Gnu Emacs Ada mode 6.0.0 is now available in GNU ELPA. See the
> homepage (http://www.nongnu.org/ada-mode/) for news.
> 
> This is a major release; an error correcting parser written in Ada is
> provided, and the grammar actions have been rewritten to implement
> indentation more efficiently. The Ada parser is useable on very large
> files. The elisp parser is still available, but does not provide error
> correction.

Nice!
Thank you for your work on Ada mode.

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

* Gnu Emacs Ada mode 6.0.0 released
  2018-12-03 18:57 Gnu Emacs Ada mode 6.0.0 released Stephen Leake
  2018-12-03 20:07 ` Shark8
@ 2018-12-04  0:25 ` Dan'l Miller
  2018-12-04 20:33   ` Stephen Leake
  2018-12-05 18:51 ` julian.fondren
  2 siblings, 1 reply; 7+ messages in thread
From: Dan'l Miller @ 2018-12-04  0:25 UTC (permalink / raw)


Is this a brand new (written from scratch) parser of the Ada2012 language?  Or is it derived from GNAT? 


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

* Re: Gnu Emacs Ada mode 6.0.0 released
  2018-12-04  0:25 ` Dan'l Miller
@ 2018-12-04 20:33   ` Stephen Leake
  0 siblings, 0 replies; 7+ messages in thread
From: Stephen Leake @ 2018-12-04 20:33 UTC (permalink / raw)


On Monday, December 3, 2018 at 4:25:19 PM UTC-8, Dan'l Miller wrote:
> Is this a brand new (written from scratch) parser of the Ada2012 language?  Or is it derived from GNAT?

It is not derived from GNAT.

There has been an LALR parser in GNU ELPA ada-mode for 5 years now, and this parser is derived from that one. The major new feature is the error recovery.

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

* Re: Gnu Emacs Ada mode 6.0.0 released
  2018-12-03 18:57 Gnu Emacs Ada mode 6.0.0 released Stephen Leake
  2018-12-03 20:07 ` Shark8
  2018-12-04  0:25 ` Dan'l Miller
@ 2018-12-05 18:51 ` julian.fondren
  2018-12-05 19:00   ` julian.fondren
  2018-12-05 19:37   ` Simon Wright
  2 siblings, 2 replies; 7+ messages in thread
From: julian.fondren @ 2018-12-05 18:51 UTC (permalink / raw)


On Monday, December 3, 2018 at 12:57:50 PM UTC-6, Stephen Leake wrote:
> Gnu Emacs Ada mode 6.0.0 is now available in GNU ELPA. See the
> homepage (http://www.nongnu.org/ada-mode/) for news.
> 
> This is a major release; an error correcting parser written in Ada is
> provided, and the grammar actions have been rewritten to implement
> indentation more efficiently. The Ada parser is useable on very large
> files. The elisp parser is still available, but does not provide error
> correction.

Thanks. This fixes the only annoyance that I had with 5.0.0, that a
'procedure' would be indented too far if it followed a function
with a parenthesized body (that wasn't on the same line as its
'function').

It requires me to update my hack to ada-mode though, previously to the
ada-adjust-case-interactive function. I changed that function so that
I could type

  words-like-this with-dashes as-the-alternative-is-actually-painful

and get

  Words_Like_This With_Dashes -- etc.

My hack wasn't very robust. It just inserted _ instead of - if the
previous char in the buffer was some kind of [[:alpha:]]


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

* Re: Gnu Emacs Ada mode 6.0.0 released
  2018-12-05 18:51 ` julian.fondren
@ 2018-12-05 19:00   ` julian.fondren
  2018-12-05 19:37   ` Simon Wright
  1 sibling, 0 replies; 7+ messages in thread
From: julian.fondren @ 2018-12-05 19:00 UTC (permalink / raw)


On Wednesday, December 5, 2018 at 12:51:44 PM UTC-6, julian....@gmail.com wrote:
> On Monday, December 3, 2018 at 12:57:50 PM UTC-6, Stephen Leake wrote:
> > Gnu Emacs Ada mode 6.0.0 is now available in GNU ELPA. See the
> > homepage (http://www.nongnu.org/ada-mode/) for news.
> > 
> > This is a major release; an error correcting parser written in Ada is
> > provided, and the grammar actions have been rewritten to implement
> > indentation more efficiently. The Ada parser is useable on very large
> > files. The elisp parser is still available, but does not provide error
> > correction.
> 
> Thanks. This fixes the only annoyance that I had with 5.0.0, that a
> 'procedure' would be indented too far if it followed a function
> with a parenthesized body (that wasn't on the same line as its
> 'function').
> 
> It requires me to update my hack to ada-mode though, previously to the
> ada-adjust-case-interactive function. I changed that function so that
> I could type
> 
>   words-like-this with-dashes as-the-alternative-is-actually-painful
> 
> and get
> 
>   Words_Like_This With_Dashes -- etc.
> 
> My hack wasn't very robust. It just inserted _ instead of - if the
> previous char in the buffer was some kind of [[:alpha:]]

That update wasn't too hard. The function's now ada-case-adjust-interactive ,
and I just added an additional test before the T case

     ((and (eq lastk ?-)
           (save-excursion (ignore-errors (re-search-backward "[[:alpha:]]" (- (point) 1)))))
      (when ada-auto-case
        (ada-case-adjust lastk))
      (insert "_"))

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

* Re: Gnu Emacs Ada mode 6.0.0 released
  2018-12-05 18:51 ` julian.fondren
  2018-12-05 19:00   ` julian.fondren
@ 2018-12-05 19:37   ` Simon Wright
  1 sibling, 0 replies; 7+ messages in thread
From: Simon Wright @ 2018-12-05 19:37 UTC (permalink / raw)


julian.fondren@gmail.com writes:

> My hack wasn't very robust. It just inserted _ instead of - if the
> previous char in the buffer was some kind of [[:alpha:]]

I'd have gone for [[:alnum:]] but then I'd never write 1-2 if I meant an
arithmetic expression! (since -gnaty would complain)


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

end of thread, other threads:[~2018-12-05 19:37 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-12-03 18:57 Gnu Emacs Ada mode 6.0.0 released Stephen Leake
2018-12-03 20:07 ` Shark8
2018-12-04  0:25 ` Dan'l Miller
2018-12-04 20:33   ` Stephen Leake
2018-12-05 18:51 ` julian.fondren
2018-12-05 19:00   ` julian.fondren
2018-12-05 19:37   ` Simon Wright

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox