ada-mode-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Ada-mode-users] error correction in ada-mode parser sort of ready for b


From: Stephen Leake
Subject: [Ada-mode-users] error correction in ada-mode parser sort of ready for beta test
Date: Wed, 13 Dec 2017 13:48:03 -0600
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (windows-nt)

Error correction in the ada-mode parser is working well enough that I'm
using it daily while working on making it better. So if other people
want to give it a try, they can.

It's in ada-france monotone, the following branches:

org.emacs.ada-mode.stephe-2
org.wisitoken
org.stephe-leake.sal
org.stephe-leake.makerules

There are instructions in ada-mode/ada_mode.texi for building the Ada
executable that does the error correcting parsing. There is also an
error correcting parser for gpr files.

(And I hope to use the same infrastructure for a Java parser, so I feel
better about editing Java code for Android :).

It works quite nicely for most simple errors. Some errors confuse it,
and it gets very slow. It is also easy to let errors accumulate, since
you don't notice them; then it also gets slow. C-c C-f
'ada-wisi-show-parse-error' puts up a compilation buffer with the
errors, and C-c M-` will apply the fix to the source.

If you start using it, and run across a real case where it gets slow,
send me the file (or a pared down one that shows the same problem), and
I'll see if I can improve it for that case.

The elisp side is fairly stable now; I don't anticipate major changes
before the next release. But the Ada code is under heavy development, as
I add error correction features. Right now I'm working on using block
name matching; if 'end <name>' doesn't match the corresponding 'begin'
(or 'procedure' etc), we need to insert an 'end' before it, not after.

-- 
-- Stephe



reply via email to

[Prev in Thread] Current Thread [Next in Thread]