• Stars
    star
    230
  • Rank 167,798 (Top 4 %)
  • Language
    C#
  • License
    MIT License
  • Created about 9 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A regex-based programming language.

Retina

Build Status Release

Retina is a regex-based recreational programming language. Every program works by reading a (finite) string from standard input, transforming it via a series of regex operations (e.g. counting matches, filtering lines, and most of all substituting). Retina was built on top of .NET's regex engine, but provides its own, more powerful substitution syntax.

Retina was mainly developed for code golf which may explain its very terse configuration syntax and some weird design decisions.

Running Retina

The easiest way to try out Retina is to use it right in your browser at Try It Online!

Up-to-date .NET Core binaries of Retina are provided as Github releases. Alternatively, you can build it yourself from the C# sources. The code requires .NET Core 2.2.

Source files can simply be passed as command-line arguments. For details of ways to invoke Retina see the docs.

How does it work?

Full documentation of the language can be found in the Wiki. For a (hopefully) more accessible introduction to the language's basic features see the annotated example programs. It might also be worth having a look at the changelog.

Using Retina

If you actually go to the trouble of learning Retina's fairly obscure syntax, you'll find that it's a surprisingly effective productivity tool when it comes to transforming text documents. If VS Code is your text editor of choice, you can install the Retinate extension, which lets you use Retina scripts as a powerful alternative to regular Search and Replace.

More Repositories

1

hexagony

A two-dimensional, hexagonal programming language.
Ruby
559
star
2

gloomhaven-rules

Unofficial lightweight, searchable copy of the Gloomhaven rule book
151
star
3

labyrinth

A two-dimensional programming language.
Ruby
53
star
4

alice

A feature-rich, two-dimensional, recreational programming language. With mirrors.
Ruby
42
star
5

webgl-ripples

A physically realistic real-time simulation of (transversal) 2D waves in WebGL.
JavaScript
26
star
6

stackcats

A stack-based programming language with a lot of symmetry.
Python
23
star
7

wumpus

A two-dimensional, triangular programming language.
Ruby
18
star
8

brian-chuck

An esoteric programming language with two mutually modifying Brainfuck-like programs.
Ruby
12
star
9

ppcg-genetic-algorithms

Repository for controllers for PPCG challenge
C#
11
star
10

orthagonal

A two-dimensional programming language from 1994.
C
11
star
11

circular-zero

A prototype for a Qix/Jezzball clone using a circular geometry.
JavaScript
5
star
12

php-SAI

Stand-Alone Interfaces and example implementations for PHP. Ideal for stubbing or mocking individual PHP functionality without depending on any other lib or framework.
PHP
5
star
13

vscode-retinate

Use Retina to transform your documents.
TypeScript
3
star
14

regex-vizard

Regex engine internals visualizer to-be ... currently on hold
JavaScript
3
star
15

balanced-swe-solvers

Code for my master project on well-balanced numerical solvers for rotating shallow water equations.
Fortran
3
star
16

gmtk-game-jam-2019

An entry to the GMTK Game Jam 2019
C#
3
star
17

hexagonal-zero

A prototype for a match-3 game on a hexagonal grid.
JavaScript
3
star
18

ppcg-vector-racing

Control program for a PPCG challenge.
Ruby
2
star
19

PHASM201

Final-year project for MSci Theoretical Physics
Mathematica
2
star
20

webgl-wallpaint

Repository for a PPCG challenge
JavaScript
2
star
21

webgl-boilerplate

Some useful baseline code to get new WebGL projects quickly up-and-running.
JavaScript
2
star
22

polyform-explorer

C#
1
star
23

ppcg-product-grid

http://codegolf.stackexchange.com/questions/32527/longest-mathematical-expression-in-a-grid/32736#32736
C
1
star
24

ppcg-domino-circuits

Control program for a PPCG challenge.
C#
1
star
25

livesplit-autosplitters

ASL
1
star
26

ppcg-stack-exchange-icons

Collection of all icons of Stack Exchange site.
1
star
27

webgl-tilings

Rendering tilings of the plane with WebGL (and maybe running the Game of Life on them).
JavaScript
1
star
28

ppcg-tetris-tournament

C
1
star
29

vr-jam-2020

C#
1
star
30

hexagonal-life

Game of Life simulator on a hexagonal grid
JavaScript
1
star
31

pada

Ruby interpreter for the esolang Pada.
Ruby
1
star
32

midgard

Giving procedural terrain generation another try...
JavaScript
1
star
33

london-gamecraft

JavaScript
1
star