Question: I understand that there are three types of programming languages:

* Machine languages
* Assembly languages
* high-level languages

And that:

* Machine languages have no abstraction
* Assembly language have little abstraction
* High-level languages have much abstraction (data types being the difference maker?)

---

Is there a standard or model or taxonomy of programming languages different than machine-assembly-highlevel?

In other words, is this taxonomy necessary or are there more "sophisticated" or "complex" categorizations?

Answer: 
In casual words, a Turing machine can do anything computational, but *nothing else*; especially there's no IO. No keyboard, no mouse. It just takes a tape as input and runs a predefined program on it.

This means that you cannot use `window.prompt` or similar (anything that asks for user input) in the middle of your program, and therefore there is no equivalent of "Guess the number" program for TM. So, if you want to stick to the TM as the model of computation, you basically need a different problem that can be solved with binary search, without user input in the middle of the program.

Some examples of such problems include:

* An array of integers is given in strictly increasing order. Determine if a given number exists in the array.
* An array of integers is given, so that all odd numbers come before all even numbers. Find the first even number in the array.
* Given a polynomial and a range (upper and lower limits of the value of x), find a zero of the polynomial within the given range.
> 
> Is there any concept of "privacy" of tokens in the world of Turing Machines or some structure that can be used to implement "privacy" in some specific tokens written on a Turing Machine?
> 
> 
> 

There is a concept of [obfuscation](https://en.wikipedia.org/wiki/Obfuscation_(software)). A software code is obfuscated to make it difficult to analyze the behavior of the program, even if the source code of the program is given. This concept is mostly applied to practical programming languages or machine codes but can be applied to more computation models, including Turing machines.

A theoretical concept of obfuscation is [black-box obfuscation](https://en.wikipedia.org/wiki/Black-box_obfuscation). Informally speaking, with such obfuscation, no one with a "debugger" can inspect the program to get more information than just running the program. It is proven no such scheme exists.