This is the repository for the Wollok Language definition, and also the main access point for all resources.
Wollok is a language designed to satisfy our main goals for teaching OO concepts. You can see Wollok site for further information.
It is a Wollok Project which contains
- Wollok core libraries: strings, numbers, dates, booleans, etc. in
src
folder - Wollok language specification, in form of unit tests: in
test
folder you'll see our sanity tests where you can check how should you use Wollok objects from core libraries, and syntax definitions.
All files follow a standard coding convention, please read them before collaborating.
- If you want to propose a change, please open a new issue. Ideally, a new feature proposal should have: a) what do you want to achieve, b) why do you want the new feature, c) (optional) if it could solved with Wollok-side implementation or it could require native implementations, d) (optional, nice-to-have) acceptance tests. We have a sort of consensus instead of a bureaucratic committee, and will evaluate and prioritize the proposal. Pending task: add a template
- Once approved, we should add it to the changelog file, which could also be useful in case you need to migrate your examples according to different versions.
- wollok-xtext: our first & stable implementation, is Eclipse Xtext-based.
- wollok-ts: next generation interpreter Typescript-based, which has...
- wollok-run-client: A proof of concept using Wollok Game, first prototype of a dynamic diagram, a new console REPL and wollok-ts interpreter
- wollok-lsp-ide: A Work-in-Progress implementation of Language Server Protocol, supported for a lot of IDEs (especially Visual Studio Code)
- wollok-highlight-vscode, a highlighter plugin for Visual Studio Code which should be integrated with Wollok-Sublime project
- wollok-cli: Wollok CLI for tasks automation (Travis integration, bash scripting, etc.)
- wollok-site: Main content of our Wollok site (hosted in github pages with Jekyll)
We also have several ideas currently suspended, that eventually anybody could resume at any time:
- wollok-s: Wollok Scala interpreter & parser
- wollok-js: Wollok javascript interpreter, parser & linker
- wollok-blockly: a Wollok blockly editor
- wollok-sublime-linter: A Linter for sublime 3
Open an issue here, and we will contact you!