SELYA (Special Esoteric Language for Young and Adult)

Overview

Selya

SELYA (Special Esoteric Language for Young and Adult) -- it is esoteric language for everyone based on hex :D

Installation

cargo install selya --features clap

Syntax

So, probably, all of you already know, that in most programming languages such string as 0xA2 -- is it hexadecimal number

Well, Selya use it as often as it can :D

Every each hexadecimal number that is used you, is written to corresponding cell.

Default the carriage installed to first position, but you can change it with operator --> or <--

Operators

It is strange, that I begin this chapter after two operators description, but nevertheless

So, Selya has next operators:

  1. --> and <-- -- shifts carriage of memory in the direction of the arrow;
  2. [+] -- add the next value to the current cell (if cell is overflowed;
  3. [^] -- addition modulo 2 of the next value with the current value in the cell;
  4. [>] and [<] -- rotate memory in the specified direction;

In addition to Selya operators, it also has commands (not released):

  1. I don't wanna talk about it, try to find it by yourself :D
  2. zen -- write zen of the Selya

Rules

  1. First value that you write -- memory size. Memory size can be greater or equal 0x0 and lower than 0xFFFF, another value cannot be recognized by parser
  2. You can get the satanic power by 6 words :D

Errors

All the errors have the same kind as [Selya::Pipeline::{kind}]: {description}. Possible kinds of errors:

  1. IoError -- selya interpreter cannot read your file;
  2. ParserError -- cannot parse your file. It seems when you for examples write more than 4 digits in the number;
  3. Memory::Overflow -- in the cell were written number more than 0xFFFF;
  4. Memory::OutOfRange -- appear when you try shifts on the boundaries of memory;
  5. Interpreter::UsingBinaryAsUnary -- after binary operator ([+] and [^]) there is no number.
You might also like...
Swayidle alternative to handle wayland idle notifications, sleep and lock events in Rust with Lua scripting based configuration language

swayidle-rs This is intended as a replacement of sway's idle management daemon. I use it as a tool to understand rust message passing and state manage

The SATySFi Language Server

[WIP] SATySFi Language Server This repository is work-in-progress yet. Features Kind Function Done codeAction Add the definition of an undefined comma

scraps of a potential language

seaslug small, beautiful, knowable, DOESN'T EXIST YET LOL non-turing complete, verified terminating code placed into well-defined interfaces similar t

A language server for lua written in rust

lua-analyzer lua-analyzer is a lsp server for lua. This is mostly for me to learn the lsp protocol and language analysis so suggestions are helpful. T

A scripting language that allows complex key remapping on Linux.

Map2 A scripting language that allows complex key remapping on Linux, written in Rust. All of the functionality related to interacting with graphical

Uindex is a data store, for data that can be parsed as sentences in some context-free language.
Uindex is a data store, for data that can be parsed as sentences in some context-free language.

Uindex - Universal index Uindex is a data store, for data that can be parsed as sentences in some context-free language.

A simple programming language for everyone.

Slang A simple programming language for everyone, made with Rust. State In very early stages. Plan is to create a byte-code compiler and make that exe

A programming language. Better mantra pending.

Dusk Dusk is a programming language I've been working on on and off for the past while now. It's still very much in its infancy (... a quick look thro

Ruxnasm is an assembler for Uxntal — a programming language for the Uxn stack-machine by Hundred Rabbits

Ruxnasm is an assembler for Uxntal — a programming language for the Uxn stack-machine by Hundred Rabbits. Ruxnasm strives to be an alternative to Uxnasm, featuring more user-friendly error reporting, warnings, and helpful hints, reminiscent of those seen in modern compilers for languages such as Rust or Elm.

Owner
Crinax
Crinax
A compiler for the esoteric language ℂ.

The ℂ Programming Language It's a language where the only types are "complex number" and "matrix of complex numbers". In particular, this means you ca

Eleanor McMurtry 24 Jul 15, 2022
A cell-based esoteric programming language

Tape A cell-based esoteric programming language Tape is a cell-based, brainfuck-like programming language that has a readable syntax and a non-wasted

Gabriel Pacheco 2 Feb 23, 2022
tr-lang is a language that aims to bring programming language syntax closer to Turkish.

tr-lang Made with ❤️ in ???? tr-lang is a language that aims to bring programming language syntax closer to Turkish. tr-lang is a stack based language

Kerem Göksu 10 Apr 2, 2022
A language server implementation for the WGSL shading language

wgsl-analyzer wgsl-analyzer is a language server plugin for the WGSL Shading language. It comes with a VS Code plugin located in ./editors/code, but d

null 155 Jan 2, 2023
beat saber is a strongly typed, self-documenting and highly performant programming language

beatsaber beat saber is a strongly typed, self-documenting and highly performant programming language. With beat saber we aimed to create a language t

Untitled 4 Jan 17, 2022
JIT compiler and runtime for a toy language, using Cranelift

Hello! This is a simple demo that JIT-compiles a toy language, using Cranelift. It uses the new JIT interface in development here. JIT takes care of m

Bytecode Alliance 468 Jan 7, 2023
Just a personal Rust Playground to play around and understand the language.

Rust Proactive Introduction The code is a bit messy but it serves just as a personal Rust Playground to play around and understand the language. You c

Fernando Cejas 3 Dec 21, 2022
Amethyst is a systems language aimed at being simple, small, portable, and safe.

amethyst Amethyst is a systems language aimed at being simple, small, portable, and safe. What is this language? From the r/ProgLangs discord server:

Amethyst Language 34 Dec 18, 2022
Compiler & Interpreter for the (rather new and very experimental) Y programming language.

Y Lang Why would anyone build a new (and rather experimental) language with no real world use case. Design Y (pronounced as why) is based on the idea

Louis Meyer 8 Mar 5, 2023
Erlang Language Platform. LSP server and CLI.

Erlang Language Platform (ELP) Description ELP integrates Erlang into modern IDEs via the language server protocol. ELP was inspired by rust-analyzer.

WhatsApp 31 Aug 7, 2023