Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/timothypratley/rustly
A Clojure to Rust transpiler
https://github.com/timothypratley/rustly
Last synced: 3 months ago
JSON representation
A Clojure to Rust transpiler
- Host: GitHub
- URL: https://github.com/timothypratley/rustly
- Owner: timothypratley
- License: epl-2.0
- Created: 2019-05-29T23:47:55.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-03-22T19:36:56.000Z (almost 5 years ago)
- Last Synced: 2024-10-19T05:49:11.475Z (4 months ago)
- Language: Clojure
- Size: 17.6 KB
- Stars: 161
- Watchers: 6
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Rustly
A Clojure to Rust transpiler.
![orange leaves](https://cdn.britannica.com/18/196818-131-84946E03.jpg)
## Usage
`lein run --in --out `
## Example
Run the example with `./hello_world.sh`
This shell script invokes the transpiler with input file
[example/hello_world/hello-world.clj](example/hello_world/hello_world.clj),
produces output file [example/hello_world/src/main.rs](example/hello_world/src/main.rs),
invokes `cargo run`,
producing the "Ferris says hello" message:----------------------------
| Hello world |
----------------------------
\
\
_~^~^~_
\) / o o \ (/
'_ - _'
/ '-----' \## Status
This is a science project.
Rustly is alpha and subject to change.
Feedback on design and implementation is welcome.
Only a subset of Clojure is implemented.
The goal is to cover all the good parts.No packaged builds are provided at this time.
To use this transpiler you must download the source code.See [Kalai](https://github.com/echeran/kalai) for a more comprehensive Clojure transpiler.
## Rationale
A concise Lisp syntax, backed by Clojure tooling that targets Rust might be a good thing.
## Developing
Issues, pull requests, and suggestions are very welcome.
## License
Copyright © 2019 Timothy Pratley
This program and the accompanying materials are made available under the
terms of the Eclipse Public License 2.0 which is available at
http://www.eclipse.org/legal/epl-2.0.This Source Code may also be made available under the following Secondary
Licenses when the conditions for such availability set forth in the Eclipse
Public License, v. 2.0 are satisfied: GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or (at your
option) any later version, with the GNU Classpath Exception which is available
at https://www.gnu.org/software/classpath/license.html.