No description or website provided.
Switch branches/tags
Nothing to show
Clone or download
Failed to load latest commit information.
.vscode Add TestSandbox for manual testing Feb 11, 2018
CompilerBackend @ 4404a34 Update CompilerBackend Feb 25, 2018
docs/devel_notes Add StdLib support to Perl, add expected Perl output for OneLang2 Dec 19, 2017
generated @ 9685b2c Update generated code Feb 28, 2018
images [WebIDE] Add Patreon button Feb 19, 2018
input [WebIDE] Add top panel, noJS, browser check, https redir Feb 18, 2018
langs Put lang name into lang schema, separate lang file parsing (called once) Feb 26, 2018
lib Add external libraries to repo (instead of using CDN) Nov 12, 2017
src [Compiler] Separate setup phrase (sets overlay, stdlib and gen. trans… Feb 28, 2018
.gitignore [CompilerBackend] Add remote, authentication & backend-only support Jan 22, 2018
.gitmodules Factor "FastCompile" project out into "CompilerBackend" submodule Jan 27, 2018
LICENSE Add LICENSE, close #24 Feb 21, 2018 Update Feb 19, 2018 Factor "FastCompile" project out into "CompilerBackend" submodule Jan 27, 2018
index.html [WebIDE] Fix url check bug Feb 20, 2018
package-lock.json [browser] Remove MS typescript parser and its dependencies Jan 16, 2018
package.json Fix package.json information (#24) Feb 21, 2018 [Publish] Add Google Analytics to published code Feb 17, 2018 [Publish] Add images folder to published content Feb 18, 2018 [StaticServe] Add '--withoutCompilerBackend' option Feb 3, 2018 Add VSCode helper for temporary build tasks Dec 30, 2017
tsconfig.json Add reflection support for TypeScript Dec 26, 2017
typings.json WIP Aug 7, 2017


What is

OneLang has a hard time defining itself.

Some may call it a transpiler, a special compiler which can compile source code from an input language to another. Those will have a hard time using it, as OneLang has its own rules and does not respect those of the input language, sometimes not even its syntax.

So the question arises, is OneLang a new programming language? Although we can talk about it with words like object-oriented or generic or strongly-typed, it has its own type system and AST, would you call something a programming language which does not have its own syntax?

Thus let's just define OneLang as the following for the time being: OneLang is a tool which helps writing code in multiple langauges at the same time.

It doesn't solve the problem for you, it just helps you a bit in it. You still need to master the target languages and OneLang to be able to produce anything usable.

So you may ask:

What is its purpose?

OneLang is the love child of @koczkatamas and it was not a planned child. It just happened to be conceived on a long flight home from Vegas.

Thanks to its luck and its parent's enthusiasm for understanding different programming languages, it survived the threatening monster of early abortion (this sadly cannot be said about its brother and sister projects which may rest in peace in the Git heavens...)

So in the end, we can say OneLang came into this world without explicit purpose.

Maturity of OneLang

OneLang is six months old at the time of writing and it already speaks, but don't expect any comfortable conversation with it yet. It cannot grow without a loving family, and as a single dad I cannot take care of it alone. It needs more mommies and daddies who can help raise it up.