ValeLang / Vale

Compiler for the Vale programming language - http://vale.dev/
https://vale.dev/
Apache License 2.0
1.74k stars 53 forks source link

Add metaprogramming capability #181

Open Verdagon opened 3 years ago

Verdagon commented 3 years ago

Some use cases:

divinusdracodominus commented 3 years ago

Including data in bibary rusts include_srr macro for exampke

Verdagon commented 3 years ago

structopt defines some argument parsing for us.

#[derive(Debug, Clone, Serialize, Deserialize, StructOpt)]
#[structopt(name = "fountain")]
pub struct FountainArgs {
    #[structopt(short, long)]
    pub build: bool,
    #[structopt(short, long)]
    pub run: bool,
    ...
}

Not that we have to aim to do it just like they did, but this should be easy to do with vale.

I think the core need here is associating certain data with certain fields.