/wollok-language

Wollok language definition

Primary LanguageWollokGNU General Public License v3.0GPL-3.0

image

Wollok Language

This is the repository for the Wollok Language definition, and also the main access point for all resources.

What is Wollok?

Wollok is a language designed to satisfy our main goals for teaching OO concepts. You can see Wollok site for further information.

About this repository

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.

Changes

  • 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.

Current work

Roadmap 2024

Another useful repositories

  • wollok-ts: next generation interpreter Typescript-based, which has...
    • wollok-ts-cli: Wollok Command Line Interface for running programs, a REPL, tests, dynamic diagram using Wollok TS implementation
    • wollok-lsp-ide: A Work-in-Progress implementation of Language Server Protocol, supported for a lot of IDEs (especially Visual Studio Code)
    • wollok-run-client: A proof of concept using Wollok Game, first prototype of a dynamic diagram, a new console REPL and wollok-ts interpreter. It will be deprecated hopefully for 2025.
  • wollok-highlight-vscode, a highlighter plugin for Visual Studio Code
  • wollok-mobile: Mobile implementation for Wollok
  • official web site: Main content of our Wollok-TS site (developed with Astro)

Deprecated repositories

These projects are in low-maintenance mode:

  • wollok-xtext: it was our first & stable implementation (2016-2024), based on Eclipse Xtext.
  • wollok-cli: Wollok CLI for tasks automation (CI integration, bash scripting, etc.) using Wollok Xtext implementation
  • old web site: Main content of our Wollok Xtext site (hosted in github pages using Jekyll)

Experimental tools for Wollok

We also have several ideas currently suspended, that eventually anybody could resume at any time:

How to contribute?

Open an issue here, and we will contact you!