caneka

A programming langauge for streams and lifecycles

=

Why a New Langauge?

If you think there are too many layers of libraries and frameworks in conflict with conventions from 1993 mixed with conventions from 2013, Caneka may have a solution to your challenges.

Status

See our unit test status page here.

The High/Low-Level Langauge

Caneka aims to unify the fractured programming language space, by reducing the gap between low-level and high-level software engineering.

Caneka has the following tools:

Other tools:

The clearest case for Caneka, is the development of other Domain Specific Langauges. This is a niche area of computer software where some of the hardest problems are tackled in FinTech and InsurTech underwriting.

The clarity of the memory-footprint may be useful for analyzing other language runtimes making it an auditor that sits between other langauges or systems.

The Remember Concept

Most of the efficiency comes from allowing integers and static indexes to be used more often than string interpretation during runtime. Remembring the position of something, without needing the steps you took to find it again can speed things up.

The combination of the Span and the basic type system make retrieving an item from a Lookup structure, built from a simple enum possible throughout the language.

This combined with the simplicity of the re-query based Table for key-value store behavior makes Caneka an easy to understand, light-weight to run, powerful language.

Cycles vs Classes

Given that cycles are a better representation of computer processing than objects, there is high potential in this approach to a general purpose programming language.

Computers are usually applied to solve collaborative or evolving problems, the langauge focuses on patterns more than structure, in short, the Array is more powerful than the Object.

The paradigm for this type of software engineering deviates from conventional methodologies using a perspective called Cycle-Oriented Programming.

The Termination Analogy

Caneka is based on a common computer science challenge: "How to handle something, and move on, when the order is not the same". The langauge automatically populates virtual stacks and queues to handle tasks that would otherwise involve extensive handling. Consider the real world example featured in our termination analogy.

Status

In development: the language components are presently in prototype form while we draft a white-paper and seek additional funding. See unit test status on our company site for details.