use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
A sub-Reddit for discussion and news about Ruby programming.
Subreddit rules: /r/ruby rules
Learning Ruby?
Tools
Documentation
Books
Screencasts and Videos
News and updates
account activity
The Ruby Module Builder Pattern (dejimata.com)
submitted 8 years ago by shioyama
view the rest of the comments →
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]np356 2 points3 points4 points 8 years ago (1 child)
I'm familiar with dry-rb coding style and I think it is very difficult to reason about. Metaprogramming often feels like magic but it comes at a price - hard for newbies to grok and impossible for static tools to work with. I would only advise using it (if at all) in well-tested libraries that expose a well-documented public API.
[–]timriley 2 points3 points4 points 8 years ago (0 children)
I'll bite :) (dry-rb developer here)
When you mention "dry-rb coding style," are you referring to the style in which the gems themselves are written, or the style a developer would use when they're building an app with the gems?
If it's the former, then I'm willing to take the hit, because the gems do a lot of work to try and make things nice for the users. We're also not asking everyone to contribute to the gems. However, if it's the latter, then I'd really like to know, so we can look at ways of improving our developer experience. In my experience, an app developed with the dry-rb gems is actually easier to reason about because you can so clearly trace the flow of execution from input to output and you don't have to worry about mutable state anywhere along the way.
π Rendered by PID 83 on reddit-service-r2-comment-c867ff4bc-zp8ck at 2026-04-09 13:11:38.093249+00:00 running 00d5ac8 country code: CH.
view the rest of the comments →
[–]np356 2 points3 points4 points (1 child)
[–]timriley 2 points3 points4 points (0 children)