CookeyLang
h
Coder100 (10621)

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 (77) [earned 5 cycles]
View Answer
HahaYes (1247)

TEAM AMAZINGSQUIDYES FOR THE WIN

HahaYes (1247)

@AmazingMech2418 Yay! We have a supporter, yay

DynamicSquid (4359)

@HahaYes, @AmazingMech2418 i'll be on tmr and I'll try to finish it

firefish (749)

@HahaYes I will grill all cookies and non-cookies. That includes me, OH [gradually get usurped by the barbecue]

AmazingMech2418 (940)

@DynamicSquid I'm going to work more on Rex Web today so we can get prototypes and objects working before adding in native functions and then stuff like closures.

HahaYes (1247)

@AmazingMech2418 yeah. uh mech I'm on now... I'm prob gonna be on the repl for rex c++

DynamicSquid (4359)

@AmazingMech2418 hi. i'll be on soon, maybe in 30 minutes

AmazingMech2418 (940)

@DynamicSquid @HahaYes Okay. I'll probably be on Rex Web. If you need anything for the C++ version, just ping me!

Coder100 (10621)

lmao what this is cookeylang not whatever your team is @AmazingMech2418

HahaYes (1247)

@Coder100 oh lol XD don't worry. It seems like its us, cookeylang, Lit, and Empirical. Maybe spicy's team will join

AmazingMech2418 (940)

@Coder100 I know, but we were talking about Rex here. LOL! Soon, Rex will have prototypes!

HahaYes (1247)

ye does this lang have prototypes? @AmazingMech2418

AmazingMech2418 (940)

@HahaYes I do not think it does. @Coder100 , can you confirm this?

HahaYes (1247)

@AmazingMech2418 also I'll be on rex web now

AmazingMech2418 (940)

@Coder100 Prototypal OOP. Like in JS or SmallTalk or stuff like that. Not classes though. Our version, though, will actually use the original idea for OOP instead of even just JS prototypes.

Coder100 (10621)

um can you like move this convo elsewhere @AmazingMech2418

HahaYes (1247)

@Coder100 yeah sure but wouldn't you just stay on trending if you have more comments?

fuzzyastrocat (1228)

@HahaYes My lang. @hydrobolic has helped me with ideas and stuff, so if its done in time I might throw together a team.

HahaYes (1247)

@fuzzyastrocat ah I see. I have a team... I dunno if we'll win tho. Maybe place?

fuzzyastrocat (1228)

@HahaYes Yeah I'm not hoping for a win either, my lang isn't very well-suited to repl since it's an embedded systems language (so you can't just run it on repl, you have to have hardware to run it on). Thinking of entering just for fun though, maybe might win an "individual categories and prizes".

Coder100 (10621)

wait what are all of you bowing down to the great cookeylang @HahaYes

firefish (749)

@Coder100 no we're not, grilled cookie

fuzzyastrocat (1228)

@Coder100 no, I'm just saying that Curta doesn't fit well to repl.it. But overall I think it's superior :D
(no hard feelings, all these langs are super cool)

fuzzyastrocat (1228)

@HahaYes Missed pun opportunity...
haha yes I see u

fuzzyastrocat (1228)

@HahaYes Empirical is pretty good to be honest. It seems well thought-out, which I suppose is the best thing to have in a language. (And, it's well-suited to its domain, something I hope describes Curta as well!)

HahaYes (1247)

@fuzzyastrocat well. Our language is pretty good

fuzzyastrocat (1228)

@HahaYes Oh whoops, forgot to finish my comment; I meant of the languages I've seen so far. So far I haven't seen Rex so I can't make a judgement, but I'm sure I will eventually :D

HahaYes (1247)

@fuzzyastrocat lol. My ego is too big to get shattered.

fuzzyastrocat (1228)

@HahaYes Heh my ego is too small to get shattered lol

HahaYes (1247)

@fuzzyastrocat heh it seems like you have a decent sized ego heh

fuzzyastrocat (1228)

@HahaYes Yeah on here I have been promoting Curta a bit, but most times I'm overly criticizing my work
I suppose that's what I do when I come to a new platform, I'm overly outgoing compared to normal me because I wants some cycles :D

HahaYes (1247)

@fuzzyastrocat heh I see. But, hopefully we'll win.

fuzzyastrocat (1228)

@HahaYes If you do then congratulations, I will support whoever wins because we need more language designers

HahaYes (1247)

@fuzzyastrocat heh I'll just pay the judges to carry our langs.

fuzzyastrocat (1228)

@HahaYes I wouldn't say no... :D

I'm hesitant to make a team since Curta isn't done yet... maybe I'll just enter for fun idk

HahaYes (1247)

@fuzzyastrocat ah. So it seems like its us, empirical, cookey, lit, and obratnaya or whatever it is.

fuzzyastrocat (1228)

@HahaYes Not sure about Lit, since there's no team description... I have a feeling that it's a similar situation to Curta, but I could be wrong.

HahaYes (1247)

@fuzzyastrocat yeah... it seems like we actually have a decent chance. Prob around 25%

fuzzyastrocat (1228)

@HahaYes Probably, though not sure of the quality of your language — that could boost it quite a bit!

Coder100 (10621)

from what i can see i think i can do a good job @HahaYes

HahaYes (1247)

@fuzzyastrocat we have a nice feature. No one knows about our lang. We are turning it in the last minute possible.

HahaYes (1247)

@Coder100 we've done a good job too. Does your lang have prototypes?

fuzzyastrocat (1228)

@HahaYes Actually I know, and I think I know what that feature is. (You've been publicizing team AmazingSquidYes, so... :D) So I'd give you at least a 30% chance (probability wise), maybe 40%! (Obviously that sounds like I'm giving you terrible ratings, but given that the "average" should be 25% I hope it sounds like a complement)

HahaYes (1247)

@fuzzyastrocat wait wha whats the feature

fuzzyastrocat (1228)

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

HahaYes (1247)

@fuzzyastrocat uh. kinda. We've got some more features tho. Its just more of a nice touch to our lang. Hint: Debian cows

fuzzyastrocat (1228)

@HahaYes I probably explained it bad — I know where the Rex repl is so that's how I know :D I think I might know what the other feature is too (not gonna say it since it ruins it).

HahaYes (1247)

@fuzzyastrocat yeah... you've seen our repls... SPY!

HahaYes (1247)

@fuzzyastrocat jk I think everyone has spied on other people's projects

fuzzyastrocat (1228)

@HahaYes I'M SORRY I SURRENDER

Jokes aside, yes, I think everyone wants to do research to see the other people's projects.

fuzzyastrocat (1228)

@HahaYes Also why is the night interpreter in a repl named Rex?

HahaYes (1247)

@fuzzyastrocat oh that was one of squid's projects. It was a joke for Squid. XD

fuzzyastrocat (1228)

@HahaYes Oh duh that makes sense, I knew Night was one of Squid's but I didn't put 2 and 2 together and realize that Squid was on your team LOL

fuzzyastrocat (1228)

@HahaYes I'm surprised cookeylang hasn't rocketed to the top of the hot board, there's so many comments

HahaYes (1247)

@fuzzyastrocat well there is a algorithm... I think... also most of the comments are from us XD there isn't much diversity tbh

fuzzyastrocat (1228)

@HahaYes Oh ok interesting, did not know that... repl needs a DM system to prevent this from happening

HahaYes (1247)

@fuzzyastrocat I'm not sure about the entire algorithm... but I've used it pretty well.

fuzzyastrocat (1228)

@HahaYes Used it... to boost your repls or used it in a project of your own?

fuzzyastrocat (1228)

@HahaYes you
h a c k e r

nowtellmehow (just kidding, you don't have to)

HahaYes (1247)

@fuzzyastrocat just have a friend upvote for you. Tutorial section = profit

HahaYes (1247)

@fuzzyastrocat yep. It also seems like 50 comments a day is like a day on trending. more comments = stay on trending longer more upvotes = ranks higher

fuzzyastrocat (1228)

@HahaYes Hmm ok interesting. I have yet to make a post recently because I've been working so much on Curta but when I do I will have to try that!

HahaYes (1247)

@fuzzyastrocat yeah. It works pretty well. If you look, good posts have A LOT of comments.

fuzzyastrocat (1228)

@HahaYes "good" :D
(Well okay, they all are good, but theoretically if you made an empty post and then everyone commented on it then it would be a "good" post.)

firefish (749)

@HahaYes you have 1111 cycles! make a wish!

HahaYes (1247)

@firefish I'll have the most cycles