Add README.md
This commit is contained in:
parent
10b1417e03
commit
2919d75f14
51
README.md
Normal file
51
README.md
Normal file
@ -0,0 +1,51 @@
|
||||
# Qroc
|
||||
|
||||
Perl for procedural macros
|
||||
|
||||
## Have you ever...
|
||||
* Thrown a fit over Rust's type system not allowing you to write truly awful code?
|
||||
* Really wanted to just generate a tonne of code without having to learn how to correctly write proc macros?
|
||||
|
||||
## Qroc
|
||||
|
||||
Qroc allows you to write Perl directly into procedural macros. For instance,
|
||||
|
||||
```rs
|
||||
fn main() {
|
||||
println!("{}", add(1, 2));
|
||||
}
|
||||
|
||||
#[perl {
|
||||
$_ =~ s/populate/a + b/g;
|
||||
}]
|
||||
fn add(a: isize, b: isize) -> isize {
|
||||
populate
|
||||
}
|
||||
```
|
||||
|
||||
...will compile to...
|
||||
|
||||
```rs
|
||||
fn main() {
|
||||
println!("{}", add(1, 2));
|
||||
}
|
||||
|
||||
fn add(a: isize, b: isize) -> isize {
|
||||
a + b
|
||||
}
|
||||
```
|
||||
|
||||
## Considerations
|
||||
|
||||
This package should be carefully considered before use. The cognitive dissonance of writing Perl
|
||||
alongside Rust is probably too much for even the greatest 10xer to handle. Also, this is blatant
|
||||
developer-environment RCE etc. as a feature. Hence, this package is perfectly safe in SOC2-compliant
|
||||
environments.
|
||||
|
||||
## Correctness
|
||||
|
||||
No effort made.
|
||||
|
||||
## Compatibility
|
||||
|
||||
No effort made. Probably won't work on non-UNIX systems.
|
Loading…
Reference in New Issue
Block a user