Added "unless" to core.
This commit is contained in:
parent
b7973b0afa
commit
6a429d7955
@ -250,20 +250,20 @@ rule [square root of %n] =:
|
|||||||
say "The square root of 2 is \(square root of 2)"
|
say "The square root of 2 is \(square root of 2)"
|
||||||
|
|
||||||
# Macros can be defined to transform one bit of nomsu code into another using "parse % as %":
|
# Macros can be defined to transform one bit of nomsu code into another using "parse % as %":
|
||||||
parse [unless %condition %body] as:
|
parse [if %condition is untrue %body] as:
|
||||||
if (not %condition): %body
|
if (not %condition): %body
|
||||||
|
|
||||||
# Or to transform nomsu code into custom lua code using "compile % to code %"
|
# Or to transform nomsu code into custom lua code using "compile % to code %"
|
||||||
compile [unless2 %condition %body] to code: ".."
|
compile [if %condition on opposite day %body] to code: ".."
|
||||||
|if not (\(%condition as lua)) then
|
|if not (\(%condition as lua)) then
|
||||||
| \(%body as lua statements)
|
| \(%body as lua statements)
|
||||||
|end
|
|end
|
||||||
|
|
||||||
unless (1 > 10):
|
if (1 > 10) is untrue:
|
||||||
say "Nomsu parsing macros work!"
|
say "Nomsu parsing macros work!"
|
||||||
say "It looks like a keyword, but there's no magic here!"
|
say "It looks like a keyword, but there's no magic here!"
|
||||||
|
|
||||||
unless2 (1 > 10):
|
if (1 > 10) on opposite day:
|
||||||
say "Lua compiling macros work!"
|
say "Lua compiling macros work!"
|
||||||
say "It looks like a keyword, but there's no magic here!"
|
say "It looks like a keyword, but there's no magic here!"
|
||||||
|
|
||||||
|
@ -7,8 +7,12 @@ compile [if %condition %if_body] to code: ".."
|
|||||||
|if \(%condition as lua) then;
|
|if \(%condition as lua) then;
|
||||||
| \(%if_body as lua statements)
|
| \(%if_body as lua statements)
|
||||||
|end;
|
|end;
|
||||||
|
compile [unless %condition %body] to code: ".."
|
||||||
|
|if not (\(%condition as lua)) then;
|
||||||
|
| \(%body as lua statements)
|
||||||
|
|end;
|
||||||
|
|
||||||
compile [if %condition %if_body else %else_body] to code: ".."
|
compile [if %condition %if_body else %else_body, unless %condition %else_body else %if_body] to code: ".."
|
||||||
|if \(%condition as lua) then;
|
|if \(%condition as lua) then;
|
||||||
| \(%if_body as lua statements)
|
| \(%if_body as lua statements)
|
||||||
|else;
|
|else;
|
||||||
|
Loading…
Reference in New Issue
Block a user