Skip to content

this is not ready yet; do not share on socials please.

Notifications You must be signed in to change notification settings

ghuntley/cursed

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

✨ CURSED Programming Language πŸ”₯

OMG! CURSED is like, THE MOST iconic programming language that's giving major Go grammar vibes but with Gen Z slang for the keywords?! πŸ’… It's literally a self-compiling compiler written in Rust and I'm obsessed! 😍

The Tea on CURSED β˜•

CURSED is lowkey based on Go's practical design but like, replaces all those boring programming keywords with Gen Z slang that slaps so hard! It's such a vibe while still being fully functional, no cap! πŸ™Œ

Example CURSED code (it ATE and left no crumbs):

vibe main

yeet "vibez"

slay main() {
    vibez.spill("Hello, World!")  fr fr This is a comment
    
    sus name tea = "bestie"
    vibez.spillf("Hey %s, what's good?", name)

    lowkey 1 < 2 {
        vibez.spill("This is based!")
    } highkey {
        vibez.spill("This is sus!")
    }
}

Self-Compiling Compiler (so extra!) πŸ’―

CURSED is literally built different with this bootstrapping compiler approach:

  1. Stage 0: Bootstrap environment setup using Rust (so basic but necessary) πŸ™„
  2. Stage 1: Minimal bootstrap compiler in Rust (starting to serve) πŸ‘€
  3. Stage 2: Full compiler written in CURSED (the main character energy) ⭐
  4. Stage 3: Self-compiled full compiler (iconic behavior) πŸ’β€β™€οΈ

Project Structure (we stay organized, periodt!) πŸ“

  • /src: Compiler source code (core behavior, pretty much carrying) πŸ’…
  • /specs: Language specifications and docs (the rulebook, very that) πŸ“
  • /examples: Example CURSED programs (slay examples) ✨
  • /tests: Test suite for the compiler (we don't flop, we test) βœ…

Getting Started (no gatekeeping here!) πŸš€

Prerequisites (the fit check before coding) πŸ‘—

  • Rust toolchain (1.54.0 or later) βš™οΈ
  • Cargo πŸ“¦

Building (so you can build that) πŸ”¨

make build

Running Tests (gotta check the vibes) πŸ§ͺ

make test

Running the Compiler (it's giving main character energy) πŸ’»

make run ARGS="path/to/your/file.csd"

Language Documentation (real ones read the docs) πŸ“š

The complete language specifications are available in the /specs directory (we ate with these specs):

Contributing (join the CURSED group chat) πŸ‘―β€β™€οΈ

Contributions are welcome, bestie! Your pull requests can absolutely slay! Fork and go off! πŸ’…

License πŸ“œ

This project is licensed under the MIT License - see the LICENSE file for the deets. It's giving open source! 🀩

About

this is not ready yet; do not share on socials please.

Resources

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published