Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jlervin/shodan

A REPL calculator implemented in Go
https://github.com/jlervin/shodan

go grammars parsing repl scanning

Last synced: about 8 hours ago
JSON representation

A REPL calculator implemented in Go

Awesome Lists containing this project

README

        


shodan




Welcome to my world, insect.

`shodan` is a simple REPL calculator implemented in `go` - named after the infamous articial intelligence
from the 1994 video game `System Shock`.

## Features

`shodan` is a fast, command-line calculator.
I wrote it primarly as a way to get experience with `go`, scanning, parsing, and grammars.
The program using recursive descent parsing and scans lines in linear time.

## Grammar

`shodan` is defined using the following grammar:

```
::= |
::= | = | clear | list | quit | exit
::= | + | -
::= | * | /
::= | **
::= | | () | sqrt() | sin() | cos() tan()
arcsin() | arccos() | arctan() | log() | ln() | abs()
```