 |
 |
|
 |
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Orchid XP v8 wrote:
> There's takeWhile, dropWhile and span which chop up segments of lists.
> There's "unfoldr" which builds lists. There's "until", which repeats a
> computation until a condition holds, and returns the final result. And
> so on...
I think the "until" is what I was after, but the Erlang syntax for
curried functions is just klunky enough to still make it annoying.
Still, better than a global name for every while loop. :-)
--
Darren New / San Diego, CA, USA (PST)
"That's pretty. Where's that?"
"It's the Age of Channelwood."
"We should go there on vacation some time."
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Darren New wrote:
> I think the "until" is what I was after, but the Erlang syntax for
> curried functions is just klunky enough to still make it annoying.
Ah. Examining unfoldr, I see I was making it too complicated. I was
trying to figure out how to make "while" (or "until") take two lambdas,
one for the condition, one for the "body" of the loop. Much easier to
just have the one function return whether to keep iterating.
Now I can easily say things like "keep prompting and reading a line
until the user actually types an integer."
--
Darren New / San Diego, CA, USA (PST)
"That's pretty. Where's that?"
"It's the Age of Channelwood."
"We should go there on vacation some time."
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
>> foldr is a for-loop, but unfoldr *is* a while-loop, as are the others
>> I quoted.
>
> I see the confusion. Erlang isn't lazy.
Laziness for the win! (Or for the user-defined control structures,
anyway...) :-D
>> Better yet: As far as anybody knows, messages never expire! >:-)
>
> Immortally famous!
Hell yeah!
--
http://blog.orphi.me.uk/
http://www.zazzle.com/MathematicalOrchid*
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
>> I think the "until" is what I was after, but the Erlang syntax for
>> curried functions is just klunky enough to still make it annoying.
>
> Ah. Examining unfoldr, I see I was making it too complicated. I was
> trying to figure out how to make "while" (or "until") take two lambdas,
> one for the condition, one for the "body" of the loop. Much easier to
> just have the one function return whether to keep iterating.
>
> Now I can easily say things like "keep prompting and reading a line
> until the user actually types an integer."
Yes indeed. You have found enlightenment...
--
http://blog.orphi.me.uk/
http://www.zazzle.com/MathematicalOrchid*
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |