Giter Site home page Giter Site logo
 photo

eberban Goto Github PK

repos: 2.0 gists: 0.0

Type: Organization

Bio: eberban is a Lojban-inspired constructed language aimed at being simple, regular and expressive.

eberban

Eberban is a logical constructed language aimed to satisfy the following goals :

  • being simple : the Eberban grammar allows manipulating predicates with particles in a way that is close to the higher-order logic it translates into, while abstracting away the verbosity of explicitely providing variables as arguments of predicates.
  • being regular : valid sentences are syntaxicaly unambiguous. Most grammar rules rely on particles which are organised in families, each starting with a unique prefix. Many additional patterns are shared between particles and predicate words to help learning groups of related words.
  • being expressive : the grammar and core vocabulary focus on providing a simple framework, on top of which can be built abstractions, complex concepts and tools. Since those are built into Eberban itself, users can create their own tools and abstractions to express entirely new concepts.

Eberban take inspirations from Lojban and other logical languages, but try novel approaches to satisfy the above goals.

Most resources are hosted on GitHub pages, such as :

  • parsers, which transform text into a tree structure, that can also be visualized as nested boxes.
  • a dictionnary allowing to search words and their definitions.
  • learning resources to discover the language grammar and concepts.

If you would like to get involved, please also consider joining our Discord server.


How to update the parser and dictionary

To build the dictionary and parser locally, you must have NodeJS and NPM installed. Open a terminal in the node folder and run once the following command:

npm i

After every change in the node folder or in the dictionary, run the following command to build:

npm run build

To open the web pages in your browser you need to run an HTTP server in the root folder, for exemple using miniserve. You can then browse the local web site at http://127.0.0.1:8080/index.html .

To add a new word in the dictionary, you must edit dictionary/en.yaml and create a new entry for your word. You should set the id field to INSERT_WORD_ID, and then run the command npm run ids in the node folder so that INSERT_WORD_ID is automatically replaced with a random unique ID.

How to update a book

Books are made using mdbook and a few extensions which are written in [Rust]. First install Rust then run the following commands to install the required binaries:

cargo install mdbook
cargo install mdbook-linkcheck
cargo install mdbook-regex-replacer

You can then open a terminal in the book folder (in which book.toml is located) and run mdbook serve. This will run a web server that will reflect changes that you make in the .md files.

eberban's Projects

eberban icon eberban

Parser and dictionary for the eberban language.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.