EZASP 2 - Making Learning Answer Set Programming EasierThis Visual Studio Code extension enhances your Answer Set Programming (ASP) development experience by introducing a range of features, based on the methodology introduced by Fandinno et al. (https://arxiv.org/abs/2111.06366), that aim to facilitate writing ASP programs in particular for newcomers. DependenciesThis extension uses two other VS Code extensions:
When installing this VS Code extension, it will also install these automatically. Note that this extension may only be fully functional when these two are installed and active. For details on these two extensions, we refer to their descriptions. FeaturesThe following features of this VS Code extension (just like the features of the two extensions on which it builds) only work for files with the .lp extension. Syntax CheckingWhen a rule contains any basic syntax issues within the scope of the rules admitted by the methodology employed, it triggers a red underline, accompanied by a hover message.
Capturing Unsafe VariableWhen the program contains Unsafe Variable errors, it triggers a red underline, accompanied by a hover message listing the Unsafe Variables.
Order of Rules WarningsRules must appear in the following order: Constants, Facts, Choices, Definitions, Constraints, Optimization Statements, Weak Constraints and Show Statements. The extension checks this and highlights any out-of-order rules (yellow underline). Additionally, a hover message explains what the error is.
Stratification Warning and ErrorsThe extension also highlights with a red underline if a predicate has not been defined beforehand or with a yellow underline if a predicate is used before it is defined (in the same file or optionally in one of the other files of the same project – see below for details). Additionally, it shows a hover message to explain which predicate has triggered this issue.
Automatic Code ReorderingWhenever a Order warning is present in the program, a 'Fix Order' button will appear under the Quick-fix menu provided by the VSCode editor. Clicking this button will reorganize the constructs in the program to ensure all order warnings are resolved. Additionally, the final order will also minimize the number of stratification issues in each section.
On-Hover Predicate InformationWhen you hover over a predicate, the extension reveals a pop-up message displaying the line where the predicate was defined, along with the preceding comment.
Missing Comment WarningRules without preceding comments are highlighted (yellow underline), and on hover a message will appear explaining this.
Feature DisablementIf desired, you can disable any of the previous features of this application. In the
Issues/SuggestionsYou can post your issues/suggestions on the GitHub Page. CreditsThis extension is based on the original work by @Ramiro Henriques, who created the first version of this extension (GitHub Page). |








