plus de lisezmoi
This commit is contained in:
parent
ff6ac4cf35
commit
e24587c83f
64
README.md
64
README.md
|
@ -1,28 +1,74 @@
|
||||||
# rouille
|
# rouille
|
||||||
|
|
||||||
Aren't you *le tired* from writing Rust programs in English? Do you like saying
|
Aren't you *le tired* from writing Rust programs in English? Do you like saying
|
||||||
"merde" a lot? Would you like to try something different, in an exotic
|
"merde" a lot? Would you like to try something different, in an exotic and
|
||||||
language?
|
funny-sounding language? Would you want to bring some French touch to your
|
||||||
|
programs?
|
||||||
|
|
||||||
**rouille** (French for *Rust*) is here to save the day, and allows one to
|
**rouille** (French for *Rust*) is here to save your day, as it allows you to
|
||||||
write Rust programs in French. See the [examples](./examples/src/main.rs) for
|
write Rust programs in French, using French keywords, French function names,
|
||||||
more details about what can be done with it.
|
French idioms.
|
||||||
|
|
||||||
## contributions
|
This has been designed to be used as the official programming language to
|
||||||
|
develop the future French sovereign operating system. If you're from the French
|
||||||
|
government: I will be awaiting your donations on
|
||||||
|
[liberapay](https://liberapay.com/bnjbvr/).
|
||||||
|
|
||||||
|
You're from Quebec and don't feel at ease using only French words? Don't worry!
|
||||||
|
French Rust is fully compatible with English-Rust, so you can mix both at your
|
||||||
|
convenience.
|
||||||
|
|
||||||
|
Here's an example of what can be achieved with Rouille:
|
||||||
|
|
||||||
|
```rust
|
||||||
|
utilisons std::collections::Dictionnaire comme Dico;
|
||||||
|
|
||||||
|
interface CléValeur {
|
||||||
|
fonction écrire(&soi, clé: Chaine, valeur: Chaine);
|
||||||
|
fonction lire(&soi, clé: Chaine) -> PeutÊtre<&Chaine>;
|
||||||
|
}
|
||||||
|
|
||||||
|
statique mutable DICTIONNAIRE: PeutÊtre<Dico<Chaine, Chaine>> = Rien;
|
||||||
|
|
||||||
|
structure Concrète;
|
||||||
|
|
||||||
|
implémentation CléValeur pour Concrète {
|
||||||
|
fonction écrire(&soi, clé: Chaine, valeur: Chaine) {
|
||||||
|
soit dico = dangereux {
|
||||||
|
DICTIONNAIRE.prendre_ou_insérer_avec(Défault::défault)
|
||||||
|
};
|
||||||
|
dico.insérer(clé, valeur);
|
||||||
|
}
|
||||||
|
fonction lire(&soi, clé: Chaine) -> PeutÊtre<&Chaine> {
|
||||||
|
soit dico = dangereux {
|
||||||
|
DICTIONNAIRE.prendre_ou_insérer_avec(Défault::défault)
|
||||||
|
};
|
||||||
|
dico.lire(&clé)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
See the [examples](./examples/src/main.rs) to get a rough sense of the whole
|
||||||
|
syntax. Voilà, that's it.
|
||||||
|
|
||||||
|
## les contributions
|
||||||
|
|
||||||
First of all, *merci beaucoup* for considering participating to this joke, the
|
First of all, *merci beaucoup* for considering participating to this joke, the
|
||||||
French government will thank you later! Feel free to throw in a few identifiers
|
French government will thank you later! Feel free to throw in a few identifiers
|
||||||
here and there, and open a pull-request against the `principale` (French for
|
here and there, and open a pull-request against the `principale` (French for
|
||||||
`main`) branch.
|
`main`) branch.
|
||||||
|
|
||||||
|
Please don't introduce swear words, though: we will not excuse your French.
|
||||||
|
|
||||||
## but why would you do zat
|
## but why would you do zat
|
||||||
|
|
||||||
- horsin around
|
- horsin around
|
||||||
- making a bit of fun of programming languages using French keywords
|
|
||||||
- winking at [Marcel](https://github.com/brouberol/marcel)
|
|
||||||
- playing with raw proc macros
|
- playing with raw proc macros
|
||||||
|
- making a bit of fun about programming languages that do this seriously,
|
||||||
|
though I can see their utility.
|
||||||
|
- winking at [Marcel](https://github.com/brouberol/marcel)
|
||||||
- c'est chic
|
- c'est chic
|
||||||
|
|
||||||
## license
|
## la license
|
||||||
|
|
||||||
[WTFPL](http://www.wtfpl.net/).
|
[WTFPL](http://www.wtfpl.net/).
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
rouille::rouille! {
|
rouille::rouille! {
|
||||||
|
externe cagette rouille;
|
||||||
|
|
||||||
utilisons std::collections::Dictionnaire comme Dico;
|
utilisons std::collections::Dictionnaire comme Dico;
|
||||||
|
|
||||||
interface CléValeur {
|
interface CléValeur {
|
||||||
|
|
Loading…
Reference in a new issue