Bracmat is software for analysis and transformation of uncharted and complex data.
Pattern matching as a programming language construct is strangely absent or incomplete in popular programming languages. Functional languages (Haskell, Scala, F#, etc.) have tree patterns but lack associative patterns, Perl has associative patterns, but lacks tree patterns, Tom has associative tree patterns, but does not let you embed expressions in patterns. Java and C++ have no language construct for pattern matching, but can be fortified with some library that implements a pattern language (XPath, SQL, regex,…). However, an embedded pattern language does not, in turn, allow embedded Java or C++ statements inside a pattern, so patterns get only as expressive and powerful as the pattern language allows.
Bracmat has tree patterns that can be associative and that can contain embedded expressions, so Bracmat is a programming language and at the same time a pattern language.
Of course, Bracmat also has string patterns. The same syntax is used for tree patterns and string patterns.
Ease of use, clarity and expressive power of Bracmat’s patterns can compete with RE, SQL, XQuery and Prolog. Modelling data in Bracmat is a small step away from understanding and controlling it.
You can download Bracmat from GitHub.
If you want to try Bracmat right now, run Bracmat in your own browser.
From this Land of Atheists, I travell'd on over a steep Mountain to the City of Bracmat, which was situated in the Plain at the Foot of the Mountain. The Inhabi- tants are Junipers. The first Person I met, came directly rushing at me, and threw me backwards. I did not well understand this, and asking the Reason of it, the Juniper begg'd my Pardon a thousand Times. Pre- sently after, another with a Staff he had in his Hand, gave me a Blow upon the Reins that almost took away my Senses : But in the same Moment he made a long Harangue to me in Excuse of his Imprudence. Sus- pecting, therefore, this People to be either totally blind, or very weak-sighted, I took Care to avoid every one I met. In fact, all this arose from the exquisite Sense of Sight which some are here endued with. They can clearly discern remote Objects, which are impenetrable to vulgar Eyes; but then they do not see what is nearer and almost at hand. These are call'd Makatti ; and they devote themselves principally to the Studies of Metaphysicks and Astronomy. They are of very little Service in the World, by reason of their too delicate Vision. They make very pretty minute Philosophers ; but in solid Matters and Things of daily Use, they commit innumerable Blunders. However, the Government makes some Use of them, and sends them to the Mines for the Disco- very of Metals. For tho' they see scarce any Thing upon the Surface of the Earth, their Sight exerts itself upon any Thing be- neath it. I concluded from hence, that there are some who are blind from too great a Delicacy in the Organs of Vision, and that they would see better if their Eyes were worse.