Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/onelang/OneLang
https://github.com/onelang/OneLang
cpp csharp golang java javascript language perl php programming-language python ruby source-to-source swift transpiler typescript
Last synced: 9 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/onelang/OneLang
- Owner: onelang
- License: mit
- Created: 2017-08-10T21:32:01.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2023-01-01T16:23:08.000Z (almost 2 years ago)
- Last Synced: 2023-10-20T07:28:50.393Z (about 1 year ago)
- Topics: cpp, csharp, golang, java, javascript, language, perl, php, programming-language, python, ruby, source-to-source, swift, transpiler, typescript
- Language: TypeScript
- Size: 3.22 MB
- Stars: 1,070
- Watchers: 43
- Forks: 78
- Open Issues: 37
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-list - OneLang
README
# TL;DR
- V1 live demo on https://ide.onelang.io
- V2 is in progress
# What is OneLang.io?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](https://en.wikipedia.org/wiki/Abstract_syntax_tree), 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.
# Similar projects
* Haxe: https://haxe.org/
* progsbase: https://www.progsbase.com/
* Universal-transpiler: https://jarble.github.io/transpiler/
* pseudo: https://github.com/pseudo-lang/pseudoComparison: https://github.com/onelang/OneLang/wiki/OneLang-vs.-Haxe-vs.-Progsbase-comparison