return keyword + idea for how to use it in for

This commit is contained in:
greg 2017-09-17 06:22:19 -07:00
parent b920fae93b
commit 8fe7c85b00
2 changed files with 9 additions and 4 deletions

View File

@ -38,6 +38,7 @@ pub enum Kw {
For,
Match,
Var, Const, Let, In,
Return,
Alias, Type, SelfType, SelfIdent,
Trait, Impl,
True, False
@ -56,6 +57,7 @@ lazy_static! {
"const" => Kw::Const,
"let" => Kw::Let,
"in" => Kw::In,
"return" => Kw::Return,
"alias" => Kw::Alias,
"type" => Kw::Type,
"Self" => Kw::SelfType,

View File

@ -42,17 +42,20 @@ fn main() {
#iteration over a variable
for i <- [1..1000] {
}
} #return type is return type of block
#while loop
for a != 3 || fuckTard() {
break
}
} #return type is return type of block
#monadic decomposition
for a <- maybeInt(); s <- foo() {
for {
a <- maybeInt();
s <- foo()
} return {
a + s
}
} #return type is Monad<return type of block>
# let statements too!!
for (a = 20