Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/brunexgeek/jane
Experimental programming language based on TypeScript that transpiles to ANSI C89
https://github.com/brunexgeek/jane
c c89 compiler transpiler typescript
Last synced: 26 days ago
JSON representation
Experimental programming language based on TypeScript that transpiles to ANSI C89
- Host: GitHub
- URL: https://github.com/brunexgeek/jane
- Owner: brunexgeek
- License: apache-2.0
- Created: 2019-04-09T23:07:19.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-08-16T14:50:55.000Z (about 1 year ago)
- Last Synced: 2024-09-30T01:22:40.739Z (about 1 month ago)
- Topics: c, c89, compiler, transpiler, typescript
- Language: TypeScript
- Homepage:
- Size: 246 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![Jane](extra/logo-128x128.png)
# Jane [![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Fbrunexgeek%2Fjane%2Fbadge%3Fref%3Dmaster&label=build&logo=none)](https://actions-badge.atrox.dev/brunexgeek/jane/goto?ref=master)
Experimental programming language based on [TypeScript](https://www.typescriptlang.org/) that transpiles to ANSI C89. Jane is a dialect of TypeScript and is not intended to be fully compatible with it.
The project is being implemented incrementally and in the first iteration the goal is to have a [self-hosting](https://en.wikipedia.org/wiki/Self-hosting_%28compilers%29) compiler. For that, the least possible number of TypeScript features are being used in order to make the implementation simple to compile. For example, the current implementation does not use generics (and the compiler does not support it).
For now, the compiler generates ANSI C89 code from Jane sources. You can generate native binaries using any C or C++ compiler available in your environment (e.g. GCC, MSVC++). In the future [LLVM](https://llvm.org/) will be integrated into the compiler to perform optimization e code generation.