Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
soc:2009:lynusvaz:project_plan:start [2009/06/01 09:48] lynusvaz |
soc:2009:lynusvaz:project_plan:start [2009/08/15 08:59] (current) lynusvaz |
||
---|---|---|---|
Line 2: | Line 2: | ||
===== Project Plan ===== | ===== Project Plan ===== | ||
- | gPXE currently features a limited capability command language. A more powerful scripting language would be useful to users: they can specify boot policies or other customizations as a script, without having to understand gPXE completely, or having to edit the code. | ||
- | |||
- | Features: | ||
- | |||
- | Evaluating arithmetic/boolean expressions | ||
- | |||
- | If-then-else branches | ||
- | |||
- | Quoting | ||
- | |||
- | |||
- | |||
- | |||
==== Summary ==== | ==== Summary ==== | ||
Line 46: | Line 33: | ||
* Also, handling variables in these expressions, especially string variables | * Also, handling variables in these expressions, especially string variables | ||
* I also think we need to have some operators like: check if interface exists (maybe (--i net1)?) | * I also think we need to have some operators like: check if interface exists (maybe (--i net1)?) | ||
+ | * Quoting | ||
+ | * Command exit code | ||
+ | * Documentation | ||
+ | * Testing | ||
- | + | ==== Milestones and Timeline ==== | |
+ | Current work: I currently have code to evaluate arithmetic expressions, involving integers only (variable substitution is done before it is called). The usual C operators are supported (no variables, so no assignment), with their usual precedence and associativity. | ||
+ | |||
+ | June 8: Finalize syntax issues: dealing with string variables, use ${} for arithmetic expressions as well or define another delimiter, syntax for if, and loops. | ||
- | ==== Milestones and Timeline ==== | + | June 14: Implementation of arithmetic parser as decided. |
- | Current work: I currently have code to evaluate arithmetic expressions, involving integers only. The usual C operators are supported (no variables, so no assignment), with their usual precedence and associativity. | + | |
+ | June 21: Dealing with quoting | ||
+ | |||
+ | June 28: Conditional branches | ||
+ | |||
+ | July 12: Loops and goto | ||
+ | |||
+ | July 23: Return code | ||
+ | |||
+ | July 26: [[..:notes:scripting_doc:Features added|Documentation]] | ||
+ | Aug 2: Autoboot script and other testing | ||
+ | Aug 10: Leeway |