Lisp-style programming language

Overview

Bobbylisp

A programming language, syntax are like mal and clojure. This project follow mal guides, Planning to add some more features after finishing the guides.

Note: This project is just for me to learn about parsing and stuff, Please don't expect things to be stable in here. Things can change in here without warning. Use at your own caution :O

Current progess

  • Parsing
  • Parse from file
  • Evaluating
  • Environment
  • User-defined function
  • Macros
  • Try
  • Implement basic language stuff
  • Transpliers and/or Compilers

Examples

The syntax highlighting might be incorrect becuase there is no support for this language (yet)

;; Hello world
(printf "Hello World!")
;; Fizzbuzz
(def fizzbuzz (fn [i]
    (let [v [ (= (% i 3) 0), (= (% i 5) 0) ] ]
    (if (= v [true, true]) "FizzBuzz"
    (if (= v [true, false]) "Fizz"
    (if (= v [false, true]) "Buzz"
    (if (= v [false, false]) (strf i))))))))

;; Looping
(def loop (fn [x max]
    (if (<= x max)
        (do
            (printf (fizzbuzz x))
            (loop (+ x 1) max)
        ))))

(loop 1 20)
You might also like...
The programming language for scalable development

Pen programming language Pen is the programming language that makes software development scalable, focusing on software maintainability and portabilit

A newborn programming language for extensible software

A newborn programming language for extensible software.

A simple programming language made for scripting inspired on rust and javascript.

FnXY Programming Language Quick move: CONTRIBUTING | LICENSE What? FnXY is a simple programming language made for scripting inspired on rust and javas

A multithreaded programming language!

hydracane A multithreaded programming language! Getting started Coming Soon! Features: Multithreaded Platform independent Folders: src/vm: The Virtual

CARBON is an interface-centric programming language named after the concept of an allotropy.

CARBON programming language Status: just an idea CARBON is an interface-centric programming language named after the concept of an allotropy. It is an

An interpreter for the esoteric programming language, Brainf*ck.

Brainf*ck Interpreter This is just a normal Brainf*ck interpreter written in Rust. If you don't know what Brainf*ck is, you can check out the wikipedi

Pua-lang - a dialect of The Monkey Programming Language

pua-lang PUA Programming Language written in Rust. What's pua-lang? pua-lang is a dialect of The Monkey Programming Language, intended to mirror the i

The Fluet programming language.

fluet Fluet is a scripting language. License Fluet is licensed under the Mozilla Public License, v. 2.0. Contributors may dual license their contribut

Ethereal - a general-purpose programming language that is designed to be fast and simple
Ethereal - a general-purpose programming language that is designed to be fast and simple

Ethereal is a general-purpose programming language that is designed to be fast and simple. Heavly inspired by Monkey and written in Rust

Releases(0.1.0)
Owner
azur
:trollface: I make new projects every 60 minutes
azur
A dialect of Lisp that designed for Minecraft bedrock command.

Command Lisp Document Command Lisp是一门为Minecraft Bedrock设计的简化语言,拥有这非常高的抽象程度。同时,它也是Lisp的一门方言。 Lisp 与众不同的部分原因是,它被设计成能够自己进化。你能用 Lisp 定义新的 Lisp 操作符。

CAIMEO 5 Jul 21, 2022
Lisp interpreter that might be fast someday maybe?

ehlisp Pronunciation I'm not really sure. Maybe like an incorrect pronunciation of "ellipse", like "ellisp"? Also maybe like "a lisp". I named it this

Eddie Hatfield 3 Oct 6, 2022
Inline CSS into style attributes

css-inline A crate for inlining CSS into HTML documents. It is built with Mozilla's Servo project components. When you send HTML emails, you need to u

Dmitry Dygalo 122 Dec 30, 2022
A Zellij plugin to fuzzy find file names and contents in style 🧐

About This Zellij plugin is a fuzzy finder for file names and their contents. It can open results in your $EDITOR (scrolled to the correct line), as f

Aram Drevekenin 11 Jun 22, 2023
Tyrade: a pure functional language for type-level programming in Rust

A pure functional language for type-level programming in Rust

Will Crichton 286 Jan 1, 2023
An OOP programming language I am making by following Crafting Interpreters.

horba An OOP programming language I am making by following Crafting Interpreters. https://craftinginterpreters.com/ I intend it to have a somewhat C-s

Thomas 3 Dec 5, 2021
Yet Another Programming Language

Yet Another Programming Language

null 4 Sep 15, 2021
luau bindings for the Rust programming language

?? luau-rs Luau bindings for the Rust programming language using bindgen ⚠️ Disclaimer This does not provide bindings for everything as luau does not

Vurv 18 Aug 3, 2022
Czech for the Rust programming language

rez Nejsi you tired from writing Rust programs in English? Do you like saying do prdele or pivo a lot? Would you like to try something different, in a

Radek Vít 13 Oct 9, 2022
The official home of the Nyson Programming Language, built off Rust.

Nyson Programming Language The official home of the Nyson Programming Language, built off Rust. (created by Nyelsonon and AMTitan, 2021) Advertisement

Nyson-Programing-Language 19 Aug 10, 2022