Evan Martin (evan) wrote in evan_tech,
Evan Martin
evan
evan_tech

ruby blocks

A friend has been learning Ruby and asking questions. His first: why are procs and blocks different? (More simply: why aren't blocks special syntax for procs?)

All I could come up with is that "return" in a block returns from the lexically enclosing function, while "return" in a proc returns from the proc itself. (This is a useful distinction, though it leads to the confusing LocalJumpError exception when you call a block after control has passed away from its lexically enclosing function...)

Is that it?
Subscribe

  • no go

    Two friends of mine were pretty enthusiastic about the Go language, so I tried writing a program in it yesterday. It is frustrating because despite…

  • playing with vala

    I actually was toying with making something like Vala back in college. It's pretty cute. Much like using the sane subset of C++, as you write code…

  • chromium.el

    This weekend I wrote some Emacs Lisp to write some utility functions I find useful for hacking on Chromium. It's fun to have a reason to use Lisp!…

  • Post a new comment

    Error

    default userpic
    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 12 comments

  • no go

    Two friends of mine were pretty enthusiastic about the Go language, so I tried writing a program in it yesterday. It is frustrating because despite…

  • playing with vala

    I actually was toying with making something like Vala back in college. It's pretty cute. Much like using the sane subset of C++, as you write code…

  • chromium.el

    This weekend I wrote some Emacs Lisp to write some utility functions I find useful for hacking on Chromium. It's fun to have a reason to use Lisp!…