Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

The Future

I believe we can now confidently call Kaori a Turing-complete programming language. Many core features have already been implemented, and the journey so far has been both fun and challenging.

Performance

Here’s how Kaori compares to other dynamic languages when computing Fibonacci numbers:

LanguageVersionIterative (ms)Iterative ±Recursive (ms)Recursive ±
Kaori1.0.0246.2961.40%26.9690.86%
Lua5.5.0201.6005.01%36.5003.14%
Python3.14.43083.13511.00%102.3842.50%
PyPy7.3.2047.1101.67%21.8813.56%

Iterative: fib(30) computed 10^6 times using an iterative algorithm
Recursive: fib(30) computed once using a naive recursive algorithm (no memoization)

Environment

  • CPU: AMD Ryzen 5 5600 (6-core, 12-thread, 3.5GHz base / 4.4GHz boost)
  • RAM: 16GB DDR4 3000MHz
  • Motherboard: ASUS A320M
  • OS: Windows 11

Note: These benchmarks are based on a specific Fibonacci implementation and should not be taken as comprehensive performance claims. Kaori is still in early development, and performance characteristics may vary significantly across different workloads and use cases. Real-world performance depends on many factors beyond microbenchmarks. Benchmark results may also be slightly outdated at times as the language continues to evolve.

Development roadmap

  • Error reporting
  • Code comments
  • Arithmetic operators
  • Comparison operators
  • Logical operators
  • Prefix unary operators
  • Print statement
  • Variable declaration
  • Compound assignment operators
  • If / else statement
  • For loop
  • While loop
  • Functions
  • Bytecode instructions
  • Register virtual machine
  • Optimizations
  • Dictionaries
  • Vectors
  • Standard library
  • Garbage collector
  • Error handling mechanisms
  • Module system