New use of AALpy library #13
Replies: 7 comments 1 reply
-
We will certainly add a note in README and Wiki about your interesting use case and put a link to your post here. We are happy to hear that you have used AALpy and managed to find bugs with it :) |
Beta Was this translation helpful? Give feedback.
-
A second bug, this time in Neovim, was confirmed neovim/neovim#15288 and fixed neovim/neovim#15292 . |
Beta Was this translation helpful? Give feedback.
-
I got back to it. A new issue vim/vim#12045 has been discovered and fixed (at least partially) thanks to Moore machines learning algorithm. |
Beta Was this translation helpful? Give feedback.
-
One more issue discovered and fixed with AALpy: vim/vim#12684 |
Beta Was this translation helpful? Give feedback.
-
And another one: vim/vim#12115 |
Beta Was this translation helpful? Give feedback.
-
And one more: vim/vim#13091 |
Beta Was this translation helpful? Give feedback.
-
We think that you can include a new section to use the AALpy library as a debugger tool for software that is internally based on state machine as well as Vim, which is a text editor based on modes as shown in the following image, in the current versions of Vim they include modes that do not appear in the previous link so at first, our objective was to generate the graph so that they could cover those states, but during the process we discovered bugs and we thought it could be a totally valid tool having the advantage of being more visual and with much less code. The bugs found and the model generated are detailed below.
Vim model
In the code, I used the Neovim editor specifically because it provided an API for many languages including Python. Neovim and Vim have the relationship that each patch of Vim is brought to Neovim by the community since Neovim was developed from Vim.
The currently generated model only includes the most significant Vim inputs for state transitions.
The image below looks clearer but with fewer inputs because there are 10 MB restrictions on github.
Bugs
When professor Pierre tried to generate the diagram with certain inputs, he generated a non-deterministic behavior for what he suspected as a Vim bug, then he reported it as an issue and it was finally fixed by the community.
vim/vim#8323
Beta Was this translation helpful? Give feedback.
All reactions