Re:Toga: A Python native, OS native GUI toolkit
by TheLoneWolfling on Sunday August 10, 2014 @07:57AM
(#8159516)
At least it's less magic than puLP:
prob += x*2 + y, "foo"
This sets the objective function of prob to (2x+y), and assigns it a name of "foo". prob += x*2 + y > 3, "abcd"
That puts a constraint that 2x + y > 3, called "abcd".On both of these the string is optional.
I'm also conflicted. On one hand, it's about the most compact syntax you can get for something like this - when similar libraries in languages without operator overloading resort to passing strings into functions... On the other hand, it can be utterly incomprehensible if you haven't gone through the documentation.
Python is very good at behaving as you expect it to, despite the fact that you can implement pretty much any magic. This is down to library design more than it is language design.