CookeyLang
h
Coder100 (10479)

CookeyLang

Hello! Today we are introducing a brand new language! This brand new language is very easy to understand and it takes many different features and ideas from different languages making it easy to understand yet still being powerful! We are sure you will have an amazing experience try this language, and transitioning from and to this language will not be a problem! But, what is this language called?

Introducing CookeyLang. CookeyLang is a fast interpreted general-purpose dynamic class-based strong language for beginners, but advanced users can use it as well!

Credits

Language

Design

Beta-Testers

About

CookeyLang was created for the 2020 language jam, but it will not stop there! We already have our very own GitHub repository and docs! We also plan to rewrite in C++ and maybe even a VM! Our plan is to add and update CookeyLang to make it even better! CookeyLang is a great language for beginners to learn!

Purposes

CookeyLang is meant as a general-purpose language for beginners. It promotes good coding practices and is similar to C, JS, C#, and Python for an easy transition to and from the languages. It also contains many new features of its own and new takes on many of the old features of other languages. It aims to solve the problem of python being too "austere" and JavaScript being too "sloppy". It also fixes the problem of semicolons by requiring them throughout the code.

Examples

Fibonacci

function fibonacci(num) {
  if (num <= 1) ret 1;

  ret fibonacci(num - 1) + fibonacci(num - 2);
}

for (var i = 0; i < 20; i ++) {
  printLine(fibonacci(i));
}

99 bottles of beer

function bottle(num) {
  ret num + " of bottles of beer on a wall, " + num + " of bottles of beer on a wall.";
}

function takeOneDown(num) {
  ret "Take one down, pass it around, " + num + " bottles of beer on the wall.";
}

var bottles = 100;

function init(bottles) {
  if (bottles > 0) {
    printLine(bottle(bottles));
    bottles --;
    printLine(takeOneDown(bottles));
    init(bottles);
  } el {
    printLine("No more bottles!");
  }
}

init(bottles);

Links

Documentation
NPM
Github
Repl.it
Tests
CookeyLang Make
Discord

Usage

npx cookeylang [file]

Easy as that!

You can also get a pretty welcome screen.

npx -p cookeylang welcome

Closing

I hope you enjoyed this language as much as we did making it!

You are viewing a single comment. View All
Answered by coderbot100 (76) [earned 5 cycles]
View Answer
fuzzyastrocat (1194)

@HahaYes A prototype system which is more uniform and conforms to standard objects?