[Gambas-user] [GambasMag] Articles for Feb 2015 issue

Tobias Boege taboege at ...626...
Sat Nov 22 22:59:08 CET 2014


Hi Randall,

since the Oct 2014 issue had problems and I don't see anything for the Dec
issue, I want to let you know that I'm in my element with Feb 2015. I have
three articles in mind which I'm eager for submitting:

  1. Graphs in Gambas. I will explain _in detail_ the objectives behind the
     design of gb.data's Graph interface (the ability to _interpret_ existing
     data as a graph while saving memory) and show two sample graph classes.

     One will be a solver for certain systems of linear inequalities using
     the Bellman-Ford algorithm, for the more theoretic audience. The second
     is a little more "salonfaehig"[*]: a flood fill using breadth-first-
     search over a graph implicitely defined by the pixels of a picture.
     [ The latter I have actually already sent to the mailing list, so maybe
       I do something different. But it will surely be implicitely defining
       a graph via properties of an already existing object and using graph
       algorithms to solve the original problem. ]

     Also I intend to write a small GraphViz class which can export graphs
     as PNG images via graphviz' "dot" utility. I'll see if this fits in...

[*] A German word I can't find a suitable translation for. It means to be
    appropriate/decent in the particular society's context/etiquette. Here
    it simply means: not so theoretic, more appealing for those hands-on
    people (because you actually see something).

  2. Boolean expression parser. Some years ago I have developed a simple
     boolean expression parser in C which understands up to 26 variables and
     the boolean functions not, and, or, equivalence and implication. It
     will print out the given expression and its truth values in all
     possible configurations for the variables. [ It solved all of these
     boring "write down the truth table for this expression" assignments for
     me in the first semester :-) ]

     I will use the Shunting-yard algorithm to parse the input and then a
     queue-based RPN evaluator to get the truth value. So we have Stack and
     Queue as the central characters here. We will also face the need to
     extend the Queue class -- a very cool technique in Gambas which too few
     people seem to be aware of.

  3. Graphical Gnuplot control. Another question which I saw popping up
     frequently lately is that people want to write their own graphical
     controls to put on their forms.

     In this article I will do just that: write a GnuplotArea control which
     you can give a function to let gnuplot plot onto your form. It will
     support some style options which gnuplot offers. The gnuplot / data
     visualisation part is why it is relevant to the Feb 2015 issue. The
     beginning of this thing goes back to a thread from, I think, Bruce on
     the mailing list. The outcome of this article will be a standalone
     (modulo gnuplot), reusable control.

     [ Maybe I will throw a class in there for interpolating functions
       using Lagrange's method if I find that the GUI is not already too
       crammed. ]

     By-product insights of this article are: how to write a custom control
     and integrate it with the IDE; and how to talk properly to an external
     process (including error management).

[ With (quite!) some luck I'll have trees by that time in gb.data for your
  evolutionary algorithms... but don't count on that. ]

As you see, those three will loosely fit into the agenda for Feb 2015. While
we are at it, looking at the current article depression, maybe it would be
better if the magazine schedules new issues for every half a year instead of
quarters?

Most work of writing the articles will just be recapitulating things I have
already done, so I'm pretty confident that I can make all three until Feb.
But I can't promise to make it until the deadline which appears to be already
towards the end of December! I promise to make articles then which won't
require review ;-)

Regards,
Tobi

PS: I will send a copy of this to the mailing list in an effort to install
    some moral pressure there to write articles. If you want, you can also
    read that as "... in an effort to inspire others ..." :-)

-- 
"There's an old saying: Don't change anything... ever!" -- Mr. Monk




More information about the User mailing list