Logica is an open source logic programming language developed by Google to “solve problems of SQL” using syntax of mathematical propositional logic instead of natural language.

While Google had earlier introduced Yedalog language, Logica is replacing it as a logic language to serve data scientists, and other specialists; which compiles code to SQL and runs on the Google BiqQuery, with experimental support for PostgreSQL and SQLite.

Logica is a more concise language and supports reusable abstraction mechanisms that SQL lacks, with modules and imports support as well; it can be used from interactive Python notebook and even makes testing of queries more natural and easy.

How Logica Programming language solves SQL flaws?



Albeit, SQL is widely adopted by developers, yet it is not flawless. As statements constructed from long chains of English words can be very verbose, with a single query spanning hundreds of lines is a routine occurrence. But, the main flaw of SQL lies in its very limited support for abstraction.



Thus, Logic programming languages tend to solve these problems of SQL by using syntax of mathematical propositional logic instead of natural English language. And the language of formal logic designed by mathematicians specifically is to make expression of complex statements easier and it suits the purpose much better than natural language.

Logica extends classical Logic programming syntax further, notably with aggregation, as the name stands for Logic + Aggregation. SQL operates with relations, which are sets of rows, with logic programming the analog of a relation is a predicate, which in turn is a set of rows, but think of it as a logical condition, which describes the rows of a relation.

However, there is much more to Logica, you can start with this tutorial here to learn more about Logica. Besides using it in your next project, the learning of a new powerful language could open your mind to new ideas and perspectives on data processing and computing in general.

What is Logica? Google's Logic programming language for solving SQL flaws

Logica is an open source logic programming language developed by Google to “solve problems of SQL” using syntax of mathematical propositional logic instead of natural language.

While Google had earlier introduced Yedalog language, Logica is replacing it as a logic language to serve data scientists, and other specialists; which compiles code to SQL and runs on the Google BiqQuery, with experimental support for PostgreSQL and SQLite.

Logica is a more concise language and supports reusable abstraction mechanisms that SQL lacks, with modules and imports support as well; it can be used from interactive Python notebook and even makes testing of queries more natural and easy.

How Logica Programming language solves SQL flaws?



Albeit, SQL is widely adopted by developers, yet it is not flawless. As statements constructed from long chains of English words can be very verbose, with a single query spanning hundreds of lines is a routine occurrence. But, the main flaw of SQL lies in its very limited support for abstraction.



Thus, Logic programming languages tend to solve these problems of SQL by using syntax of mathematical propositional logic instead of natural English language. And the language of formal logic designed by mathematicians specifically is to make expression of complex statements easier and it suits the purpose much better than natural language.

Logica extends classical Logic programming syntax further, notably with aggregation, as the name stands for Logic + Aggregation. SQL operates with relations, which are sets of rows, with logic programming the analog of a relation is a predicate, which in turn is a set of rows, but think of it as a logical condition, which describes the rows of a relation.

However, there is much more to Logica, you can start with this tutorial here to learn more about Logica. Besides using it in your next project, the learning of a new powerful language could open your mind to new ideas and perspectives on data processing and computing in general.

1 comment:

  1. Very resourceful job you have done for us. It was really helpful to learn.

    ReplyDelete