Wollok v1.1 Aristoteles - uqbar-project/wollok GitHub Wiki
Language
Program and test files allow for named objects and class declarations
Now you can combine your objects and classes declarations in the same file as your programs or tests.
New test syntax
Simplified test syntax, added "assert" object, for example:
object foo {
method bar = 10
}
test "foo.bar() should return 10" {
assert.equals(10, foo.bar())
}
Improved imports
- Each .wlk file defines an importable package
- Also you can define a package inside a file
- Allow to import packages, individual classes or named objects
More examples can be found here
Named Objects can now inherit from classes
Now, when you define an object you can specify which class it inherits from.
class MyClass {
method myMethod() = "1234"
}
object myObject extends MyClass {
method something() = "abc"
}
Wollokdoc
Wollok now supports a special kind of multiline comments called wollokdoc. In the same fashion as javadoc's and many other languages documentation.
New Static Checks
Wrong usage of 'if' statement for computing a boolean value
There is a new static check for wrong usages of the if statement. When you use the 'if' just for evaluating into a boolean value, then the check will fail.
No further expressions after a return
No return in constructor
IDE
New generation console
- Allow to define a variable or constant and remember it for future usage.
- Add history support
- Add previously launched programs to the Eclipse launch history
Internationalization
Support for UI internationalisation. By default wollok supports english and spanish languages. More languages could be added in the future.
// TODO: image
Settings for Validations and Severity
Almost all language validations can be configured now, either defining them from the workspace-wide preferences or overriding that for specific projects.
For each validation you can define the severity.
Filtering elements in the Package Explorer View
Better feedback for the user
- New hover documentation provider shows more understandable names
Performance improvements
- Simplify manifest resolution