lisa icon indicating copy to clipboard operation
lisa copied to clipboard

📚 a modular easy to use Library for Static Analysis aiming at multi-language analysis

Results 28 lisa issues
Sort by recently updated
recently updated
newest added

**Description** Modularize how the execution state of an `InferenceSystem` is transferred on return statements.

🐛 type:bug
⁉ priority:p2
🔍 scope:analysis

**Description** Implement [SARL](https://link.springer.com/chapter/10.1007/978-3-030-63618-0_1) for annotation generation, and the library modeling language from PyLiSA ([lexer](https://github.com/UniVE-SSV/pylisa/blob/25d102d14e9009c54e1cc8becc1aa3a99bf2e8e5/pylisa/src/main/antlr/LibraryDefinitionLexer.g4), [parser](https://github.com/UniVE-SSV/pylisa/blob/25d102d14e9009c54e1cc8becc1aa3a99bf2e8e5/pylisa/src/main/antlr/LibraryDefinitionParser.g4)).

🎆 type:feature
❗ priority:p3
🏨 scope:infrastructure

**Description** LiSA should implement the chaotic iteration strategies (that relies on the computation of the widening points of a CFG) as described [here](https://link.springer.com/chapter/10.1007/BFb0039704).

🎆 type:feature
❗ priority:p3
🔍 scope:analysis

**Description** Most programming languages have constructs to define code blocks to catch and handle runtime errors. There is currently no way to define these in cfgs.

🎆 type:feature
⁉ priority:p2
🏛 scope:program-structure

**Description** The abstract state should have capabilities to express error tokens/exceptions. An example for this is when the type analysis discovers that there is a possible cast error: fixpoint algorithms...

🎆 type:feature
⁉ priority:p2
🔍 scope:analysis
🌍 scope:interproc
🏛 scope:program-structure

**Description** A statement could terminate execution immediately (i.e. Java's `System.exit(exitCode)`). We should add a way to support this in the fixpoint iteration.

🎆 type:feature
⁉ priority:p2
🏛 scope:program-structure

**Description** LiSA should provide native support for generic types, such as `List`.

🎆 type:feature
‼ priority:p1
🏛 scope:program-structure

**Description** At some point we should move to java 17, with records and pattern matching. We should also modularize the project.

🛠 type:refactoring
⚠ priority:p5
🏨 scope:infrastructure

**Description** `LiSAFactory.configurableComponents()` can return a list of concrete implementation of the analysis components that can be configured. This, as well as information about options inside `LiSAConfiguration`, should end up in...

📑 scope:docs
⁉ priority:p2

**Description** Option for generating mockups of each compilation unit that can redefine all methods returning top to simulate external instances (i.e. application behaves as a library that can be extended)....

🎆 type:feature
❗ priority:p3
🔍 scope:analysis
🏛 scope:program-structure