Skip to content

rcorp/empere-lang

Repository files navigation

Extraction & Mapping of Patterns in English like Regular Expressions

A new, simple, high level, open programming language for Pattern Matching & Text Extraction. Easier than Regular Expressions

Under Construction

Introduction

What started as an esoteric programming language, actually has a great use case!

  • EMPERE is used to select, extract, match or test text based on patterns. It is an easier, more readable alternative to Regular Expressions.
  • EMPERE compiles to RegExes and is inter operable with them in a variety of environments.
  • EMPERE has a very verbose, almost english style of language constructs.
  • EMPERE works best when used in teams. It becomes really easy to understand each other's ARORA code rather than Regular Expression Code.
  • EMPERE started as a hobby project to investigate Grammars and how Regular Expressions can be improved has turned out to be surprisingly useful.
  • EMPERE is still under heavy development and Language Features are subject to change.
  • EMPERE currently supports only JavaScript Regular expressions without Grouping & Capturing. We hope to support all languages and all use cases of pattern matching with active contributions from the community.
  • An online compiler for EMPERE is underway and will be released very soon.

Language Features

1. Data Types

1.1. Strings

1.1.1. Strings are alphanumeric characters between double " quotes. Special symbols are also allowed. Eg: "abc", "Ab!$%K"

1.2. Operators

1.2.1. Operators are like functions.

Any Of ("abc") -> [abc]

1.2.2. They accept zero or more (1, 2, 3) arguments. 1.2.3. They resemble english and can have whitespaces between. 1.2.4. They use {{sentence}} case. 1.2.5. They can have any number of operators inside them.

1.3. User Defined Operators

1.3.1. Users can create their own operators. 1.3.2. They can have one or more arguments like inbuilt Operators.

2. Statements

2.1. Statements are Operators separated by a comma ,. 2.2. Statements are optionally ended with a semicolon ; though it is highly recommended to do so. 2.3. Coming Soon

3. Output

Coming Soon

Detailed Docs

Coming Soon

Version

Coming Soon

Roadmap

Coming Soon

Tests

Coming Soon

Credits

The ARORA Language was created by Gaurav Ramanan.

Authors

Contributors

Waiting! Why don't you join us?

Sponsors

This project is principally sponsored by RCorp (Ramanan Corporation). Visit rcorp.co.in to know more about this company.

Sponsorship opportunities Coming Soon!

License

The EMPERE Language Copyright 2017 Gaurav Ramanan and Ramanan Corporation (RCorp). Code Licensed under The Apache License.

Releases

No releases published

Packages

No packages published