82 lines
2.8 KiB
Markdown
82 lines
2.8 KiB
Markdown
# sandwich
|
|
|
|
[![Build Status](https://drone.tildegit.org/api/badges/karx/sandwich/status.svg)](https://drone.tildegit.org/karx/sandwich) [![License](https://img.shields.io/badge/license-Unlicense-green)](https://unlicense.org)
|
|
|
|
`sandwich` is a funny programming language written in Rust.
|
|
|
|
*"Why's it called sandwich?"*
|
|
|
|
*"Well, Rust's logo is a crab, right? And crabs live on beaches. Beaches have sand. A program is just a bunch of bytes one after another. So what do you bite that's related to sand? A sandwich!"*
|
|
|
|
## Example
|
|
|
|
```sandwich
|
|
lhHello
|
|
lwWorld!
|
|
# prints hello world
|
|
p$h $w
|
|
```
|
|
|
|
## Running
|
|
|
|
See the [Running/Installation](/karx/sandwich/wiki/Running) instructions for more info.
|
|
|
|
## Documentation
|
|
|
|
Documentation is hosted on [the wiki](/karx/sandwich/wiki/Reference).
|
|
|
|
## Contributing
|
|
|
|
|
|
For major changes, please open an issue first to discuss what you would like to change.
|
|
Please make sure to update tests as appropriate.
|
|
|
|
You can do two things to submit code:
|
|
|
|
### Make a pull request
|
|
- Fork the repo
|
|
- `git clone https://tildegit.org/yourusername/sandwich`
|
|
- Make a feature branch: `git checkout -b feature/amazing-feature`
|
|
- Make your changes and commit them: `git commit -am "My amazing commit message"`
|
|
- Push changes to your fork: `git push -u origin master`
|
|
- Create a pull request.
|
|
|
|
### Send a patch
|
|
|
|
You can send a patch to `karx@tilde.team`.
|
|
Read [this guide](https://git-send-email.io) for more information.
|
|
|
|
## TODO
|
|
|
|
|
|
- [x] Ability to explicitly print math output and assign math output to variables
|
|
- [ ] Better function parsing (multi-instruction functions?)
|
|
- [x] Importing/Running other files
|
|
- [ ] "Verbose" or "Debug" mode (environment variable or flag?)
|
|
|
|
## License
|
|
|
|
This is free and unencumbered software released into the public domain.
|
|
|
|
Anyone is free to copy, modify, publish, use, compile, sell, or
|
|
distribute this software, either in source code form or as a compiled
|
|
binary, for any purpose, commercial or non-commercial, and by any
|
|
means.
|
|
|
|
In jurisdictions that recognize copyright laws, the author or authors
|
|
of this software dedicate any and all copyright interest in the
|
|
software to the public domain. We make this dedication for the benefit
|
|
of the public at large and to the detriment of our heirs and
|
|
successors. We intend this dedication to be an overt act of
|
|
relinquishment in perpetuity of all present and future rights to this
|
|
software under copyright law.
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
|
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
|
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
OTHER DEALINGS IN THE SOFTWARE.
|
|
|
|
For more information, please refer to <https://unlicense.org> |