Sort:  

Languages, the core behind math and how we communicate, the core behind computer software. Formal languages are similar to natural languages but are much more strict with regard to rules and logic. A programming language is a formal language while English is a natural language. TML exists to try to help us bridge the gap so human beings can more effectively speak to machines.

Sorry if you cannot understand all of this. Parsing is a concept in computer science which involves breaking a sentence into it's components so that it can be in a format the computer can use. If you do find Tauchain interesting just buy AGRS if you're interested in taking a gamble.

This video might help:

To be honest, the whole parse tree / parse forest concept is difficult even for me to deal with. These are not easy topics even for people with years of experience in computer science. It's a full time job to write a parser and it is something college students do to learn how to write compilers. Rarely even in college to students go so deep into the theoretical side but in essence this is computer science while a topic like parsing is a subset of computer science which most don't understand very well. Programming language development is an extremely difficult subject in computer science and even Solidity developers made mistakes developing a new programming language (it typically requires Phd level knowledge).

In the Github you can see a folder called Parser, and in that folder you can see the code written in C++ which represents the "Recognizer". I'm in the process of deepening my understanding of how the Early Recognizer generates a parse forest as there does not seem to be very good explanations which makes it hard for me after this point to explain to others. What I can do if I were coding this is simply look at all the Earley Parsers out there like MARPA and then reverse engineer by looking at the algorithms and solutions in that code but again it's important to have a deep understanding of things. My understanding at the moment is shallow while Ohad's is deep, but this is because Ohad has spent a lot more time reading up on this topic. In fact, this is consuming his life at the moment, as he seems to be focusing most of his brain power on this. Someone has to build it, and he's the most qualified among us both to do the research due to his deep understanding of mathematics and to write the code due to his many years of experience as a programmer.

Please try not to be discouraged. It takes years of study and practice to understand not just how to code but to research algorithms.

References

  1. https://jeffreykegler.github.io/Marpa-web-site/
  2. https://github.com/IDNI/tau/tree/master/parser

Now on the video I showed you, basically a context free grammar is how a language is defined. For example take English and you have a finite set of symbols (26 letters). Different combinations of these symbols make up words but there are rules which determine which combinations of these symbols can be a word. So you have stuff like nouns, verbs, etc. We also know strings of words are put together as a sentence, this is also part of English. Parsing, words can be broken down into letters. Sentences can be broken down into words. So the breaking the sentences down is to parse a sentence.

Sorry if I'm not good at explaining, my intentions are good but it's not easy.

Coin Marketplace

STEEM 0.18
TRX 0.16
JST 0.030
BTC 67801.51
ETH 2617.25
USDT 1.00
SBD 2.72