FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Original HTTPS Page]

CRISP-lang foundation Β· GitHub

CRISP-lang foundation

πŸ¦€ CRISP Language Foundation

Welcome to the CRISP Language Foundation β€” the home of the CRISP programming language and its ecosystem.

CRISP (Creative Rust Implemented Scripting Paradigm) is a modern, expressive scripting language inspired by Perl and built on Rust's safety and performance. With small touch of C and Python, it aims to bring together the best of all four worlds.


🌟 Mission

The CRISP Language Foundation exists to:

  • Develop and maintain the CRISP programming language and its standard library
  • Foster a community of developers, contributors, and users
  • Provide documentation and educational resources
  • Ensure the language remains open, free, and accessible to everyone

πŸ“¦ Projects

Core Projects

Project Description Status
CRISP The main interpreter and language implementation πŸš€ Active
CRISP-mode Emacs major mode for CRISP βœ… Stable

Upcoming Projects

  • CRISP Package Manager β€” crispan β€” Package manager for CRISP
  • CRISP LSP β€” Language Server Protocol implementation
  • CRISP VS Code Extension β€” VS Code support
  • CRISP Web β€” WebAssembly bindings

πŸš€ Get Started

Installation

# Clone the repository
git clone https://github.com/CRISP-lang-foundation/crisp.git
cd crisp

# Build from source
cargo build --release

# Install
cargo install --path .

Hello World

# hello.csp
say "Hello, World!";

Run

crisp hello.csp

Or try the REPL

crisp
>>> say "Hello, World!";
Hello, World!

πŸ“š Language Highlights

  • Perl-inspired syntax β€” Expressive and concise
  • Rust-powered β€” Memory-safe and fast
  • Optional sigils β€” $scalar, @array, %hash
  • Native regular expressions β€” Built-in regex support
  • Functional programming β€” map, grep, filter, sort
  • Object-Oriented Programming β€” Classes with inheritance
  • Pattern matching β€” match with where guards
  • Error handling β€” try/catch/finally
  • POSIX integration β€” use posix for system calls
  • Embeddable β€” Use CRISP as a scripting language in your Rust projects

Examples

FizzBuzz

fn fizzbuzz(n) {
    for i in 1..n+1 {
        if i % 15 == 0 {
            say "FizzBuzz";
        } else if i % 3 == 0 {
            say "Fizz";
        } else if i % 5 == 0 {
            say "Buzz";
        } else {
            say i;
        }
    }
}

fizzbuzz(20);

Object-Oriented Programming

class Animal {
    fn new(name) {
        self.name = name;
    }
    
    fn speak() {
        say self.name + " makes a sound";
    }
}

class Dog extends Animal {
    fn speak() {
        say self.name + " barks!";
    }
}

let dog = Dog.new("Rex");
dog.speak();  # Rex barks!

Functional Programming

let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

let evens = numbers
    |> filter { |n| n % 2 == 0 }
    |> map { |n| n * n };

say evens;  # [4, 16, 36, 64, 100]

Quadratic Equation Solver

# Quadratic Equation Solver
# Usage: crisp quadratic.csp

say "Enter coefficient a:";
let a = float(readline());

say "Enter coefficient b:";
let b = float(readline());

say "Enter coefficient c:";
let c = float(readline());

let d = pow(b, 2) - 4 * a * c;

if d > 0.0 {
    let x1 = (-b + sqrt(d)) / (2 * a);
    let x2 = (-b - sqrt(d)) / (2 * a);
    say "Roots: x1 = " + x1 + ", x2 = " + x2;
} else if d == 0.0 {
    let x = (-b) / (2 * a);
    say "Double root: x = " + x;
} else {
    let real = (-b) / (2 * a);
    let imag = sqrt(-d) / (2 * a);
    say "Complex roots: " + real + " Β± " + imag + "i";
}

🀝 Contributing

We welcome contributions! Here's how you can help:

Code Contributions

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Other Ways to Contribute

  • Report bugs β€” Open an issue with a minimal reproduction
  • Suggest features β€” Share your ideas in the discussion forum
  • Improve documentation β€” Help us write better docs
  • Write examples β€” Share your CRISP code snippets
  • Spread the word β€” Star the repo and share with others

Details can be found here in CONTRIBUTING


πŸ§ͺ Testing

Run the test suite:

cargo test

Run specific tests:

cargo test --test integration

πŸ“„ License

CRISP language is dual-licensed under:

You may choose either license at your option.


πŸ’¬ Community


πŸ› οΈ Development

Prerequisites

  • Rust 1.90 or later
  • Cargo
  • Git

Build

git clone https://github.com/CRISP-lang-foundation/crisp.git
cd crisp
cargo build

Run with debug

cargo run -- --debug

Build for release

cargo build --release

πŸ“Š Project Status

Version Status Notes
v0.1.7 βœ… Stable Feature enhancements
v0.2.0 In motion New features
v1.0.0 πŸ“… Planned First stable release

πŸ‘₯ Team

  • Peter Leukanič β€” Founder & Lead Developer
  • BatScript - Graphics , check out his amazing work as developer too: BatScript GitHub

πŸ™ Acknowledgments

  • The Rust Community β€” For the amazing language and ecosystem
  • The Perl Community β€” For the inspiration and expressiveness
  • The Emacs Community β€” For the great tools and support

πŸ“Œ Quick Links


🌈 Why CRISP?

"Perl's expressiveness, Rust's safety."

CRISP brings together the best of both worlds:

  • Expressiveness β€” Write concise, readable code like in Perl
  • Safety β€” Memory safety from Rust
  • Performance β€” Native speed when you need it
  • Flexibility β€” From quick scripts to large applications
  • Ecosystem β€” Access to Rust's crates

Support

If you like CRISP, please consider:

  • ⭐ Starring the repository
  • πŸ› Reporting issues
  • πŸ“ Contributing code or documentation
  • πŸ“’ Spreading the word

Made with πŸ¦€ by the CRISP Language Foundation

Pinned Loading

  1. CRISP-lang CRISP-lang Public

    CRISP is a scripting language that combines the expressiveness of Perl 5 with the safety and performance of Rust. Best from world of Python, Perl, Rust and C.

    Rust 5

  2. CRISP-book CRISP-book Public

    The CRISP Programming Language - A comprehensive guide to CRISP, a modern scripting language inspired by Perl and built on Rust's safety and performance. Free ebook under CC0 license.

    TeX 1

Repositories

Loading
Type
Select type
All Public Sources Forks Archived Mirrors Templates
Language
Select language
All Emacs Lisp Rust TeX
Sort
Select order
Last updated Name Stars
Showing 4 of 4 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…


Back | FazBrowse Home | New Git URL