Ajibot Blog

Dissecting Families of Logic

Bill Wadge authored a series of logic puns in "I deduce you are studying logic". Let's discover his hidden gems by examining some of the lesser known families of logic.


Ajibot and Relational Programming

"Relational programming" is yet another unique model for representing complex relationships. Learn about how relational programming is different from normal imperative programming, and how to use Ajibot as a natural language syntax.


Logician Spotlight: George Boole

This month's logician is George Boole, father of boolean algebra. Let's review his contributions to mathematics, logic, philosophy, and language.


Overview of Logic Languages

"Logic programming" is the category of programming languages most similar to English. This post reviews a sample of logic languages including old guard languages and new experimental projects exploring the frontier.


New Programming Language Checklist

Creating a new programming language? Prepare to face the scorn of countless engineers who have been burned by empty promises of the past. This post evaluates Ajibot against a popular "new programming language checklist".


Image-Based Programming

What if every morning you woke up with total amnesia, and had to re-learn everything from scratch every day? That's actually how most computer software works. Learn about image-based programming, Smalltalk, and how Ajibot uses these concepts.


Engineering Verb Tenses

Computers require a more rigorous and comprehensive model of verb tenses. This post reviews traditional verb conjugations and then proposes a data structure and high level algorithm.


Logician Spotlight: Gottlob Frege

This month's logician is Gottlob Frege, father of analytical philosophy. Let's review his contributions to logic, philosophy, and language, and how they relate to modern natural language processing.


Open vs Closed World Assumptions

It can be overwhelming to think about all of the assumptions that we make in day to day life. Many assumptions fall into "open world" and "closed world". In short, what do we do in the absence of information?


English Ambiguity and Verb Valency

What is "verb valency" and how can it help resolve ambiguous English sentences?


English and Postel's Law

What does the English language have in common with the spec for TCP? Postel's law applies to both.


Deduction vs Induction vs Abduction

An engineer, a physicist, and a mathematician were on a train heading north, and had just crossed the border into Scotland. What can we learn about deductive, inductive, and abductive reasoning?


What if everything was a graph?

Programming languages are often based on a single theme applied to an extreme. This post looks at past themes from other languages, and the central theme of Ajibot.


Graphs, Hypergraphs, and Multigraphs

As with most knowledge representation systems, Ajibot uses a graph data structure as the underlying storage system. This post compares and contrasts graphs, hypergraphs, multigraphs, and more.


Are We There Yet?

In the 2009 JVM Languages Summit keynote, Rich Hickey questioned basic principles of modern computing such as state, identity, value, and time. We examine how Ajibot answers those questions.


English as a Programming Language

As an introduction to Ajibot, we examine the potential of English as a programming language.