PINE LIBRARY

MarkovAlgorithm

Updated
Library "MarkovAlgorithm"
Markov algorithm is a string rewriting system that uses grammar-like rules to operate on strings of
symbols. Markov algorithms have been shown to be Turing-complete, which means that they are suitable as a
general model of computation and can represent any mathematical expression from its simple notation.
~ wikipedia
.
reference:
en.wikipedia.org/wiki/Markov_algorithm
rosettacode.org/wiki/Execute_a_Markov_algorithm

parse(rules, separator)
  Parameters:
    rules (string)
    separator (string)
  Returns: - `array<rule> _rules`: List of rules.
---
Usage:
- `parse("|0 -> 0||\n1 -> 0|\n0 -> ")`

apply(expression, rules)
  Aplies rules to a expression.
  Parameters:
    expression (string): `string`: Text expression to be formated by the rules.
    rules (rule[]): `string`: Rules to apply to expression on a string format to be parsed.
  Returns: - `string _result`: Formated expression.
---
Usage:
- `apply("101", parse("|0 -> 0||\n1 -> 0|\n0 -> "))`

apply(expression, rules)
  Parameters:
    expression (string)
    rules (string)
  Returns: - `string _result`: Formated expression.
---
Usage:
- `apply("101", parse("|0 -> 0||\n1 -> 0|\n0 -> "))`


rule
  String pair that represents `pattern -> replace`, each rule may be ordinary or terminating.
  Fields:
    pattern (series string): Pattern to replace.
    replacement (series string): Replacement patterns.
    termination (series bool): Termination rule.
Release Notes
v2 minor update.
Release Notes
Fix logger version.
algorithmarraysmarkovparserstrings

Pine library

In true TradingView spirit, the author has published this Pine code as an open-source library so that other Pine programmers from our community can reuse it. Cheers to the author! You may use this library privately or in other open-source publications, but reuse of this code in a publication is governed by House rules.

Disclaimer