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: 1 day ago
JSON representation
- Host: GitHub
- URL: https://github.com/onelang/onelang
- Owner: onelang
- License: mit
- Created: 2017-08-10T21:32:01.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2023-01-01T16:23:08.000Z (almost 2 years ago)
- Last Synced: 2024-12-21T10:13:19.124Z (1 day 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,124
- Watchers: 43
- Forks: 84
- Open Issues: 37
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
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