From e74745674eddce97d0175e17f4efa27a67de5366 Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Fri, 17 May 2019 09:43:09 +0300 Subject: Change: more explanation to README --- README | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/README b/README index 9b990f0..7487d4e 100644 --- a/README +++ b/README @@ -1,3 +1,21 @@ +`codegen.py`, `scenario.txt`, and `bindings.yaml` form a +proof-of-concept of what Lars's code genearation approach is supposed +to look like. `scenario.txt` is the scenario text, extracted into a +separate file to avoid having to parse Markdown. `bindings.yaml` +describes what sceanrio steps are defined and what functions should be +called for them. `codegen.py` generates Python code that executes all +the steps in the scenario. + +This doesn't even try to handle errors when running scenarios, or +missing bindings, or anything. It's the simplest possible thing that +shows the code generation idea. + +Only generates Python, and takes advantage of Python's keyword +argument handling. Generating Rust, for example, would have to handle +things much more carefully, e.g., Rust doesn't have keyword arguments, +and needs explicit types to be defined. But that's too much for +showing the core idea. + To run: ```sh -- cgit v1.2.1