Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Sure, they are almost identical, but one doesn't need .run() :)

I don't see how it wouldn't be optimal, since lazy evaluation is a superset of eager evaluation (you can invoke it whenever you want).



Both solutions are lazy. While ReQL requires .run(), the Django ORM requires you to do 'list()' (or probably other form of iterator over it). I'd say the only difference is that one is explicit and the other one is implicit.


.run() is also bad. What connection is it being run on? The most recently opened connection? In a global variable somewhere? For anything larger than a short script, you should use query.run(conn), or conn.run(query).


Yes, especially in web applications. Found that out the hard way.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: