Andl is a New Database Language

Andl does what SQL does, but it is not SQL. Andl has been developed as a fully featured database programming language following the principles set out by Date and Darwen in The Third Manifesto. It includes a full implementation of the Relational Model published by E.F. Codd in 1970, an advanced extensible type system, database updates and other SQL-like capabilities in a novel and highly expressive syntax.

The intended role of Andl is to be the implementation language for the data model of an application. It is already possible to code the business model of an application in an SQL dialect, but few people do this because of limitations in SQL. Andl aims to provide a language free of these problems that works on all these platforms.

Andl can use Sqlite as its backend. It can import data from any SQL source. It provides Thrift, REST, Web and REPL APIs. It has a Workbench for convenient experimentation.

The web site is here. Recent posts are here.

Questions and feedback much appreciated.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Your links are missing

Your links are missing "href".


Fixed. Thanks.

So you actually can program

So you actually can program in this thingie things like Sudoku solver, Mandelbrot fractals (and hopefully school time table). Sounds like a full featured programming language. Did you think of extending Andl with standard libraries and promoting it as a base for a complete stand-alone development environment?


Like SQL, it has no real UI. It can do console output if there is a console. And the world is awash with GP programming languages.

So Andl is intended to sit next to the data and completely replace SQL. I don't know anything else that can do that.

"marketing" feedback

Stick some code examples _on the landing page_. Currently, they are buried in a non-obvious link at the end of the third paragraph and lead to a reverse-chronologically ordered set of blog posts, rather than a specific introductory examples.


That landing page has obviously been there too long -- time to change.

Thanks for the suggestion.