What area of computer science for this?

AI Thread Summary
The discussion centers around the limitations and capabilities of command sets in programming languages, particularly focusing on SQL. It explores how SQL, despite its fixed set of instructions like select, from, and where, is still considered Turing complete, meaning it can solve a wide range of computational problems. The conversation delves into the theory of computation, specifically automata theory, which studies abstract machines and the problems they can solve. Participants discuss whether the theory of computation evaluates languages like SQL for completeness and identifies their computational capabilities. Additionally, it is noted that SQL can implement loops that function similarly to traditional FOR loops, reinforcing its procedural capabilities. The thread highlights the importance of understanding the computational power of different programming languages and their theoretical foundations.
Avichal
Messages
294
Reaction score
0
Lately I'm interested in questions like this: -
Given a set of commands, what all computation problems can be done?

For e.g.: - SQL has a fixed set of instructions like select, from, where etc. You can only do a limited amount of things with this language. Since there are no for loops and stuff, you are constrained.

So what area of computer science deals with questions like this?
 
Technology news on Phys.org
Theory of computation.
 
D H said:
Theory of computation.
I looked it up. Automata theory is what I'm looking for, I guess.
Wikipedia says it is the study of abstract machines and the computational problems that can be solved using these machines.
When it says 'abstract machines', it means some specific language or a set of instructions right?
 
Start from the beginning. Google "Turing".
 
I know about Turing and Turing-completeness. It decides if a given language is complete (i.e. computational problems can be solved using it or not)
But does theory of computation take languages like SQL and see if they are complete. If incomplete, then does it try to find out what all things can it do?

Anyways, I'll look for a book on it and see what it covers. Thank you for guiding!
 
Incidentally, SQL does have loops that can be made to act identically to FOR loops. It is generally considered to be a fairly complete procedural language.
 
In fact, SQL is Turing complete. See http://blog.coelho.net/database/2013/08/17/turing-sql-1/ .
 
Last edited by a moderator:

Similar threads

Back
Top