20 Jun 2020
AI is expected to have a significant impact on coding. One such AI is Zoea which creates software automatically from a specification that looks like a set of test cases. This will enable many more people to produce software but it will also fundamentally change our relationship with code.
05 Jun 2020
When we learn a new programming language there are often concepts that we can bring along from previous languages we have encountered. For example, most developers can articulate the guidelines concerning what constitutes a good variable name.
These rules have evolved over a long period of time and apply with variations to virtually every language. Similar sorts of guidelines exist for other programming language elements such as control structures. But what if your new language doesn't have any variables or control structures?
31 May 2020
This article briefly explains the main concepts and terminology used in Zoea.
Program - Every piece of software that is produced with Zoea is called a program. Every program has a single input and a single output. Inputs and outputs may be a single value like a string or a number, or they may be an array that holds many values. If a program needs to have multiple inputs or multiple outputs then the developer needs to use arrays for these.
Test case - Zoea programs are written by a developer as a set of one or more test cases. A test case is a scenario that describes exactly what should happen when a user runs a program. A simple test case might consist of a specific input (X) and a specific output (Y). This can be interpreted as saying that for this program if the user inputs X then the program will output Y.
19 May 2020
Zoea have published another research paper to the arXiv.org preprint server at Cornell University. The paper entitled "Quantifying the Impact on Software Complexity of Composable Inductive Programming using Zoea" presents results that show Zoea is simpler than conventional programming languages.
The paper includes analysis that compares Zoea with eight popular conventional programming languages in terms of the size of their grammar and the number of keywords. This shows that the Zoea language is between 25-30% as complex as the simplest conventional languages.
26 Apr 2020
There is now a Zoea page with a number of examples on Rosetta Code. Rosetta Code is a popular programming language comparison site where solutions to a wide range of programming tasks are provided in many languages.
04 Apr 2020
Some might say that the last thing the world needs is another programming language. There are literally thousands of them. To non-programmers they are all equally abstruse. Programmers on the other hand often feel very strongly about which is better or worse. Clearly they can’t all be right.
It’s hard to believe but virtually all programming languages were created in an effort to make programming easier for people. Remember that programming languages only exist for the benefit of humans - computers would get by just fine without them. So the evolution of programming languages has proceeded in a series of mostly small steps such as “lets use square brackets instead of round ones.” This is the reason why all programming languages are fundamentally so alike.
03 Dec 2019
Zoea have made available version 1 of their developer guide. This includes the complete syntax for the Zoea language and the simple rules governing how various syntactic elements can be combined.
The manual which consists of 7 pages is organised around the eight reserved words in the Zoea language. Comprehensive examples of how each keyword can be used are provided.
20 Nov 2019
Zoea have published their first research paper on the arXiv.org preprint server at Cornell University. Entitled "Composable Inductive Programming Without Limits" this paper describes the unique Zoea approach to automation of coding through AI.
Inductive programming which is the automatic generation of software from input-output examples has had a long history of sporadic progress. Until now its widespread adoption has been held back by its inability to cope with larger programs. Zoea incorporates a number of advances that overcome this problem. These include the ability to combine smaller inductive programs to form larger ones as well as the capability to specify any number intermediate values between inputs and outputs.
Company No: 12128693 Registered Address: Zoea Ltd. 20 - 22 Wenlock Road, London N1 7GU
© Copyright 2020. All Rights Reserved. Zoea is a trademark of Zoea Ltd.