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)"
|
||||
|
||||
# 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
|
||||
|
||||
# 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
|
||||
| \(%body as lua statements)
|
||||
|end
|
||||
|
||||
unless (1 > 10):
|
||||
if (1 > 10) is untrue:
|
||||
say "Nomsu parsing macros work!"
|
||||
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 "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_body as lua statements)
|
||||
|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_body as lua statements)
|
||||
|else;
|
||||
|
Loading…
Reference in New Issue
Block a user