# 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

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);``````

## 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 (102) [earned 5 cycles]
cancrusher (4)

So this is basically javascript on steiroids??

Coder100 (16772)

basically
soon we are going to have even more:

• enumerables (enum, maybe even algebraic)
• namespaces
• static methods
@cancrusher
cancrusher (4)

@Coder100 alright, can I help with the dev?

Coder100 (16772)

yeah sure do you know typescript? @cancrusher

cancrusher (4)

@Coder100 Ugh, no not really, I started learning it at one point lol

Coder100 (16772)

lol that's ok, we will be making a VM in rust tho too
do you know rust?

but you should first learn TS, as that is where the first cookeylang3 release is planned to be @cancrusher

cancrusher (4)

@Coder100 Ugh, rust no only other language I know would be c++, I've actually attempted to make my own language with c++ lol. Anyways I'll look into or learn typescript. I'll get back to you once I learn it I'll get back to you.

Coder100 (16772)

lol ok
have fun, ts is actually super simple if you know js

cancrusher (4)

@Coder100 Seems pretty simple, like you said. I'll help and hopefully learn some stuff as I go along with you guys lol... Also may I suggest a website for people to learn the langauge?

cancrusher (4)