From 4c5492ede5f826df2b1cc013c56b8d352cafdb4a Mon Sep 17 00:00:00 2001 From: thma Date: Sun, 30 Dec 2018 12:32:12 +0100 Subject: [PATCH] add quotation --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 8eb5422..f3b9e1f 100644 --- a/README.md +++ b/README.md @@ -714,6 +714,10 @@ There are many predefined Monads available in the Haskell curated libraries and ### Interpreter → Reader Monad +> In computer programming, the interpreter pattern is a design pattern that specifies how to evaluate sentences in a language. The basic idea is to have a class for each symbol (terminal or nonterminal) in a specialized computer language. The syntax tree of a sentence in the language is an instance of the composite pattern and is used to evaluate (interpret) the sentence for a client. +> +> [Quoted from Wikipedia](https://en.wikipedia.org/wiki/Interpreter_pattern) + In the section [Singleton → Applicative](#singleton--applicative) we have already written a simple expression evaluator. From that section it should be obvious how easy the definition of evaluators and interpreters is in functional programming languages. The main ingredients are: