News for hackers. Stuff that matters.
Re:Aristotle – Ruby business logic engine, inspired by Cucumber by kyllo on Wednesday November 19, 2014 @03:53PM (#8632545)
I can see the potential benefit in that, if there are specific types of business rules that really need to be configurable by the users.

However I think that if overused, this not only makes your system slow due to excessive string-comparing, it also leads to a potentially awful antipattern that I'm all too familiar with from my own experiences in enterprise software dev.

Add a few more features to this Aristotle language, and pretty soon you may have just invented yourself an ad-hoc, informally-specified, bug-ridden, slow implementation of a new programming language.

http://thedailywtf.com/articles/The_Enterprise_Rules_Engine

http://en.wikipedia.org/wiki/Inner-platform_effect

http://en.wikipedia.org/wiki/Greenspun%27s_tenth_rule

If you really need configurable rules in a rails app though, I'd think it would be faster and more maintainable to just create a DSL within Ruby code rather than parsing a text file. Then you could use the if-this-then-that type business logic syntax but still have it be legal Ruby code and get all the tooling support that comes with it.

There are no comments on this comment yet.