all repos

gbf @ 125cdd1

⭐ gleaming brainfuck
3 files changed, 44 insertions(+), 25 deletions(-)
setup the repo
Author: Oleksandr Smirnov olexsmir@gmail.com
Committed at: 2025-10-16 23:57:44 +0300
Change ID: pkkotqmotlwnrsxxxzlqpsxqpwqxstmu
Parent: ef6aac3
A LICENSE

@@ -0,0 +1,25 @@

+ GLWT(Good Luck With That) Public License + Copyright (c) Everyone, except Author + +Everyone is permitted to copy, distribute, modify, merge, sell, publish, +sublicense or whatever they want with this software but at their OWN RISK. + + Preamble + +The author has absolutely no clue what the code in this project does. +It might just work or not, there is no third option. + + + GOOD LUCK WITH THAT PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION, AND MODIFICATION + + 0. You just DO WHATEVER YOU WANT TO as long as you NEVER LEAVE A +TRACE TO TRACK THE AUTHOR of the original product to blame for or hold +responsible. + +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +Good luck and Godspeed.
M README.md

@@ -1,24 +1,26 @@

# gbf -[![Package Version](https://img.shields.io/hexpm/v/gbf)](https://hex.pm/packages/gbf) -[![Hex Docs](https://img.shields.io/badge/hex-docs-ffaff3)](https://hexdocs.pm/gbf/) +I was bored and made this :star: gleaming brainfuck interpreter. -```sh -gleam add gbf@1 -``` +## How to use? +### As library ```gleam import gbf +import gleam/io pub fn main() -> Nil { - // TODO: An example of the project in use + let input = + "++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++." + + let assert Ok(vm) = gbf.run(input) + + vm + |> gbf.output + |> io.println +// > "Hello World!" } ``` -Further documentation can be found at <https://hexdocs.pm/gbf>. - -## Development +### As CLI tool -```sh -gleam run # Run the project -gleam test # Run the tests -``` +TODO: yet to be implemented
M gleam.toml

@@ -1,21 +1,13 @@

name = "gbf" version = "1.0.0" - -# Fill out these fields if you intend to generate HTML documentation or publish -# your project to the Hex package manager. -# -# description = "" -# licences = ["Apache-2.0"] -# repository = { type = "github", user = "", repo = "" } -# links = [{ title = "Website", href = "" }] -# -# For a full reference of all the available options, you can have a look at -# https://gleam.run/writing-gleam/gleam-toml/. +description = "gleaming brainfuck" +licences = ["GLWTPL"] +repository = { type = "github", user = "olexsmir", repo = "gbf" } [dependencies] +gleam_erlang = ">= 1.3.0 and < 2.0.0" gleam_stdlib = ">= 0.44.0 and < 2.0.0" splitter = ">= 1.1.0 and < 2.0.0" -gleam_erlang = ">= 1.3.0 and < 2.0.0" [dev-dependencies] gleeunit = ">= 1.0.0 and < 2.0.0"