As per the README
, any lang is allowed, as long as it isn't a duplicate. You can even deviate from my original algorithm, as long as the essence of Sisyphus is preserved.
If you add a lang that's similar to another, ensure to highlight (or even exaggerate) the differences between them, to reduce redundancy.
Look at JS vs TS files as an example.
Add a suffix that identifies your impl from the rest. Preferably delimited by "-" or " ". Examples:
Sisyphus no-std.rs
Sisyphus-colorized.sh
Sisyphus-quine.pl
If your impl depends on a specific env/runtime, include that info in the extension. Examples:
Sisyphus.bun.js # for "The Buntime"
Sisyphus.c.py # specific to CPython
If your impl is cross-platform, don't add env info.
- Prefer
"
for strings, as most langs interpret'
in conflicting ways (in speaking/writing it's an apostrophe; in C and Rust it's achar
). - Use the most-idiomatic formatter for the corresponding lang. Such as:
rustfmt
for Rust, ESLint or Prettier for JS,gofmt
for Go, etc... - Update
.editorconfig
to avoid conflicts with chosen lang. I've already did this with YAML, despite not being present in the repo (yet).
Why is there
.editorconfig
but not.gitattributes
?
Because I want local and remote repos to have the same eol
NO. I want each lang to show its quirks, for the sake of diversity!
However, I recommend using SC to verify POSIX-compliance of sh
scripts. If there's a better way to statically-check POSIX scripts, please let me know