The EK9 IDE

The EK9 IDE is a desktop editor for EK9 with the compiler built in. You start it with ek9 -ide.

ek9 -ide

The EK9 IDE with helloworld.ek9 open: two hovers on the right describe stdout and println, and the run dialog shows Success with the output Hello, World!

What you need

ek9 -ide starts the IDE. Like the rest of EK9, it needs Java 25 or later.

A first program

Open a directory of .ek9 files with File > Open Project…, open a source file, and run its program with Run > Run Program…. Here is the program from the introduction:

#!ek9
defines module site.introduction.hello
  defines program

    HelloWorld()
      stdout <- Stdout()
      stdout.println("Hello, World")

The editor indents with two spaces: Tab inserts two spaces and Shift+Tab outdents.

The menus

Menu What it holds
Build Compile Project, Compile File
Run Run Tests, Run File Tests, Quality Report, Run Program…
Refactor Extract Method, Extract Variable, Inline Variable, Inline Function, Move Construct, Organize Constants
Navigate Go to Definition

Using VS Code or IntelliJ instead

The EK9 extension for VS Code (vscode-ek9-ls) starts the EK9 language server, ek9 -ls. The server reports the compiler's errors as you type, and answers hover, completion, go to definition and find references.

The EK9 plugin for IntelliJ (intellij-ek9-ls) uses the same language server, and the EK9 debug adapter, ek9 -dap, for breakpoints. It needs the LSP4IJ plugin installed first.

The language

This section covers the IDE. The language itself is in the EK9 language reference, starting with Structure.