All Projects → jenra-uwu → curly-lang-legacy

jenra-uwu / curly-lang-legacy

Licence: other
Curly programming language

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to curly-lang-legacy

yantra
JavaScript Engine for .NET Standard
Stars: ✭ 32 (+100%)
Mutual labels:  functional-language
CIBYL
Lightweight curly-bracket language which compiles to Ruby and Crystal.
Stars: ✭ 45 (+181.25%)
Mutual labels:  curly
lambda-lite-js
a tiny FUNCITONAL LANGUAGE implemented by javascript. 一个函数式语言,使用 js 实现。
Stars: ✭ 77 (+381.25%)
Mutual labels:  functional-language
yave
Functional visual programming language with FRP for multimedia
Stars: ✭ 29 (+81.25%)
Mutual labels:  functional-language
Janet
A dynamic language and bytecode vm
Stars: ✭ 2,216 (+13750%)
Mutual labels:  functional-language
Ocaml
The core OCaml system: compilers, runtime system, base libraries
Stars: ✭ 3,502 (+21787.5%)
Mutual labels:  functional-language
Coconut
Simple, elegant, Pythonic functional programming.
Stars: ✭ 3,422 (+21287.5%)
Mutual labels:  functional-language
Write You A Haskell
Building a modern functional compiler from first principles. (http://dev.stephendiehl.com/fun/)
Stars: ✭ 3,064 (+19050%)
Mutual labels:  functional-language
typy
A fragmentary bidirectional type system as a Python library
Stars: ✭ 51 (+218.75%)
Mutual labels:  functional-language
malgo
A statically typed functional programming language.
Stars: ✭ 37 (+131.25%)
Mutual labels:  functional-language

Curly

IMPORTANT NOTICE: This repo is now archived. For the current implementation of the language, please see https://github.com/jenra-uwu/curly-lang.

Curly is a functional programming language that focuses on iterators. Some of its main implementation features include lazy evaluation, list comprehensions, and quantifiers.

Example

primes = n in (from 2) where
    for all p in (range 2 n)
        n % p != 0

Build

Just type in the following:

git clone https://github.com/jenra-uwu/curly-lang && cd curly-lang && make

This project depends on libedit-dev/libedit-devel/readline (for Linux and macOS respectively) and llvm, which can each be installed using your favourite package manager (apt/pacman/yum for Linux and Homebrew/MacPorts for macOS).

Note: On Fedora, you also need to install llvm-devel.

Note: This repo has been tested on macOS, Ubuntu, and Fedora as of now, but will not build on Windows. Windows support is coming soon.

Progress

The parser is done, and the type checker is mostly done. Current effort is focused on the LLVM backend. Everything is highly experimental. Be cautious: code may be explosive.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].