In Ruby Inox Part 4: Property I described I would like to see properties in a GUI toolkit. Since then I worked hard to stabilized the code and the module Property profited from the experience gained by rethinking the way of the Actions module should work.
Posts Tagged ‘cross language’
Ruby Inox Part 3.1: Actions
05.21
Here is a short update for the Ruby Inox Part3: Actions article. Some stuff worked out just fine, some stuff had to be changed to facilitate subclassing.
Ruby Inox Part 4: Property
05.19
Last time, we took a look at Actions. A standard way to handle callbacks and actions is an absolute requirement for some frameworks like a Graphical user interface toolkit.
One aspect of such toolkits is that they relay heavily on an uniform way to handle objects; we have actions, we still need an uniform way to define and handle properties of objects.
A more restrictive way is required than that offered by ruby.
Ruby Inox Part 3: Actions
05.11
Here is the pursuit of a series of related articles started by Ruby Inox Part1 where I set out to accomplish every task set by the creator. Promptly followed by his first instructions of implementing a simple Point class.
Althought I left out to publish on this site the specification and implementation of the Size class and Rect class, as they are very similar to that of the Point class; you can find the source on GitHub.
Let’s jump straight to the next challenge: Actions
Ruby Inox Part 2: A Point class
05.07
Alright, the journey begins. I received the first specification! If you don’t know what this is about perhaps you missed out the story. The first part of the story nor the sotry itslef is relevant for understanding the code that follows. Just a way to keep it interesting and mysterious, until something working comes out of box. Now let me continue the story:
First the creator explained me that after years of debate he settled down on ruby as language for Inox. He then asked me to implement a Point class. At first I objected as why such a class would be of any use and why not represent a point as an array [x, y].