The title might be a bit controversial but at least it is catchy one. Recently I’ve seen a few posts about Shake, a make replacement with several improvements (such as more flexible dependency specification). There are also examples how to use it with say Vala.
I have met with claims that the static typing is useless as it is not mathematical proof (OK – for those knowing the discussion – I exaggerated a lot). However to large extend the static typing is prove of some sort and depending on the code it might be a prove of even quite strong properties.
As chosen field I tried to use LLRB trees – I have implemented them quite long time ago and I’ve run into problems that violated the pre and post conditions. Even when problem was discovered it took some time to find out the underlaying problems (my inexperience didn’t helped probably either)
I’ve tried to reimplement the code in GHC Haskell with following rules:
- Using only ‘safe’ extensions
- Making all functions total and without use of
- Ensuring that all properties of tree are preserved
Unfortunately this was my first time I used some of the concepts (like Zipper) so the implementation and description might be not the best (comments and corrections welcome).
Fortunately or unfortunately the presentations tend to be more and more popular sources of information. Be it a new library, language or future direction of a project the only possible way is either attend some presentation or watch it later.
Every time now and then we want to automate tasks. Sometimes it is just a repetitive task and sometimes we want to do a complex task without having to remember each particular step. If the task is not general enough (say – applies to a single workflow) it does not have specialised GUI. On the other hand if one of steps involve GUI it cannot be done from commandline (shell script) alone.
Unfortunately the previous host was unreliable to say the least. During last crash I lost two posts (one note very interesting about libgee 0.7 and one about general thought on debugging). The recent security breach caused lost of trust into it from many users (including me) and caused the closure of project.
Therefore the blog was moved to wordpress.com – please wait until the change is propagated through DNSes.
I finally restored blog after my provider total RAID failure which resulted in xfs corruption of partition where the databases were located (as well as corruption of partition where the blog was). Unfortunately not all data was retrieved so there are a few things missing from previous blog (comments and users).