Skip to content

Latest commit

 

History

History
110 lines (88 loc) · 3.16 KB

File metadata and controls

110 lines (88 loc) · 3.16 KB

GLS - General Language Syntax

NPM version Greenkeeper badge Circle CI

A unified syntax that compiles into a number of OOP languages.

GLS is still under development. Don't expect everything to work!

Usage

GLS can be used as a command-line app or via import/require.

CLI

To convert file.gls to file.py:

npm install general-language-syntax gls-cli --global

gls --language Python file.gls

See gls-cli.

Code

npm install general-language-syntax

import { Gls } from "general-language-syntax";

const gls = new Gls("C#");

// System.Console.WriteLine("Hello world!");
gls.convert([`print : ("Hello world!")`]);

Status

GLS is within the 0.4 range, working towards 0.5.

Deliverable Version Description
C++ Compiler 0.1 Command-line GLS prototype, written in C++.
TypeScript Compiler draft 0.2 GLS compiler as a website, written in TypeScript.
TypeScript Compiler + C# Output 0.3 GLS compiler re-written in TypeScript. Near-working C#, Java, JavaScript, Python, Ruby, and TypeScript output.
Roundtripping Feature Complete 0.4 Features expected to required for roundtripping implemented. Working Java, C#, JavaScript, Python, Ruby, and TypeScript output.
Full Language Outputs 0.5 Roundtripping implemented. GLS is checked in as GLS but written in C#.
Powershell, PHP, Misc. 0.6 Onboard or reject those languages and other possibilities.
Language Specification Finalized 0.7 Finalized language spec & cleaned internals of code.
General Release 1.0 Public announcement, glory to everyone. Switched to a better name.

Development

If you'd like to contribute to GLS, see Development.md.

Requires Node >=8