All releases for the Coco Programming Language are published here.
v0.3.6 (alpha)
Hotfix Release
v0.3.6 is a hotfix release that addresses a bug with pointer sizing that resulted in some functions failing to execute at runtime.
Downloads
the installation bundles below include v0.3.0 of the LogicLab CLI
mac0S ARM64
Linux ARM64
Windows x64
mac0S x86_64
Linux x86_64
Windows x64 (Installer)
v0.3.5 (alpha)
Feature Release
v0.3.5 is a feature release that adds support for compile optimisation, array popping with the popend
function and new capabilities to the range
function. It also fixes several bugs around assignments to nested objects and complex targets as well as AST generation.
Downloads
the installation bundles below include v0.3.0 of the LogicLab CLI
mac0S ARM64
Linux ARM64
Windows x64
mac0S x86_64
Linux x86_64
Windows x64 (Installer)
v0.3.4 (alpha)
Feature Release
v0.3.4 is a feature release that adds support for revert statements that allow users to explicitly throw exceptions with a revert flag enabled. It also adds support for expressions in f-strings and includes several internal changes for source builds.
Downloads
the installation bundles below include v0.2.4 of the LogicLab CLI
mac0S ARM64
Linux ARM64
Windows x64
mac0S x86_64
Linux x86_64
Windows x64 (Installer)
v0.3.3 (alpha)
Maintenance Release
v0.3.3 is a maintenance release that allows compiling modules across multiple source files. It also enables the printing of the compiled AST using the --ast
flag, to enable debugging and tooling functionality as a base for the language server protocol.
Downloads
the installation bundles below include v0.2.3 of the LogicLab CLI
mac0S ARM64
Linux ARM64
Windows x64
mac0S x86_64
Linux x86_64
Windows x64 (Installer)
v0.3.2 (alpha)
Feature Release
v0.3.2 is a feature release that adds support for compiling manifest in different instruction code forms apart from BIN
. New supported code forms are ASM
for human-readable assembly instructions and HEX
for hexadecimal instructions.
Downloads
the installation bundles below include v0.2.3 of the LogicLab CLI
mac0S ARM64
Linux ARM64
Windows x64
mac0S x86_64
Linux x86_64
Windows x64 (Installer)
v0.3.1 (alpha)
Feature Release
v0.3.1 is a feature release that adds support for runtime type and fuel inspection with the fuel()
and typeof(T)
built-in functions added to the language syntax. Additionally, the argument names can now be omitted from built-in functions.
Downloads
the installation bundles below include v0.2.1 of the LogicLab CLI
mac0S ARM64
Linux ARM64
Windows x64
mac0S x86_64
Linux x86_64
Windows x64 (Installer)
v0.3.0 (alpha)
Feature Release
v0.3.0 is a feature release with several new syntax features and some breaking changes. It introduces new superglobals, new function calling syntax and coco.nut
files for maintaining the metadata of a module.
Release Notes
- The
coco nut init <module>
command is required to initialise acoco.nut
file in the directory. It is required for the simplifiedcoco compile
command to work now. - Adds new superglobals
Env
andIxn
for accessing environment and interaction related capabilities and data such as the interaction fuel parameters or the timestamp in the environment - The
coco
compiler now uses stricter types for indexing elements and registers for improvements in performance & stability. - The syntax for function calling and capturing output values now uses
()
instead of{}
for better readability. This change also applies to the objects inreturn
statements
Downloads
the installation bundles below include v0.2.1 of the LogicLab CLI
mac0S ARM64
Linux ARM64
Windows x64
mac0S x86_64
Linux x86_64
Windows x64 (Installer)
v0.2.2 (alpha)
Maintenance Release
v0.2.2 is a maintenance release with several new syntax features such as module-level constants and simplified function calling rules. It also introduces codegen fixes for composite type yielding and jumps register allocation
Downloads
the installation bundles below include v0.1.6 of the LogicLab CLI
mac0S ARM64
mac0S x86_64
Linux ARM64
Linux x86_64
Windows x86_64
v0.2.1 (alpha)
Maintenance Release
v0.2.1 is a maintenance release with codegen optimisations for redundant jump instructions for break
and continue
statements and improved handling for values like 0
and +/-1
without using constant loading.
Downloads
the installation bundles below include v0.1.6 of the LogicLab CLI
mac0S ARM64
mac0S x86_64
Linux ARM64
Linux x86_64
Windows x86_64
v0.2.0 (alpha)
Feature Release
v0.2.0 is a feature release with breaking changes to language constructs like endpoints and drops the elif
keyword. It also adds support for map literals, multi-symbol state accessors and several codegen optimisations.
Release Notes
coco version
now prints aCocolang
ASCII figlet. This banner can be suppressed with the-s
flagfunc
qualifiers forinvokable
anddeployer
call sites have been replaced withendpoint <qualifier>
.- All
func
constructs are considered local and thelocal
keyword is no longer a valid qualifier. - Add support for map literal values
- Replace the
elif
keyword with the use ofelse if
. This reduces the overall number of keywords in the language - Add support for multi-symbol state access with
mutate
andobserve
- Optimise codegen for arithmetic operations with 1 and f-strings that begin with constant values
Downloads
the installation bundles below include v0.1.5 of the LogicLab CLI
mac0S ARM64
mac0S x86_64
Linux ARM64
Linux x86_64
Windows x86_64
v0.1.3 (alpha)
Maintenance Release
v0.1.3 is a maintenance release with improvements to the compiler memory handling, an enhanced codebase format for better collaboration and codegen optimisations for redundant boolean and arithmetic operations.
Downloads
the installation bundles below include v0.1.5 of the LogicLab CLI
mac0S ARM64
mac0S x86_64
Linux ARM64
Linux x86_64
Windows x86_64
v0.1.2 (alpha)
Maintenance Release
v0.1.2 is a maintenance release with minor bug fixes and features
Release Notes
Features
- Adds a
coco version
command to view the current version - Adds support for conversion to
Bytes
for strings and numerics
Bug Fixes
- Manifests compiled with empty body functions (i.e
pass
) now generate valid routine objects without ano instructions found
deployment error self
is now mandatory as the first argument for class methods- Fix an issue
append
&merge
that was mutating the original objects
Downloads
the installation bundles below include v0.1.4 of the LogicLab CLI
mac0S ARM64
mac0S x86_64
Linux ARM64
Linux x86_64
Windows x86_64
v0.1.1 (alpha)
Hotfix Release
v0.1.1 is a hotfix for when the compiler assumes incorrect types for the return values when returning multiple values and adds new unit and integration tests for this condition
Downloads
the installation bundles below include v0.1.3 of the LogicLab CLI
mac0S ARM64
mac0S x86_64
Linux ARM64
Linux x86_64
Windows x86_64
v0.1.0 (alpha)
Initial Release
v0.1.0 is the initial alpha release of Cocolang. Contains the core capabilities of the language with support for all primitive types and collections along with classes, methods and a built-in library for cryptography and serialization. Includes support for persistent state management, local function invocation and exception throwing.
Downloads
the installation bundles below include v0.1.3 of the LogicLab CLI