![]() |
Fleet
0.0.9
Inference in the LOT
|
A grammar for SK combinatory logic. NOTE: CustomOps must be defined here. More...
#include <signal.h>
#include "Errors.h"
#include "Grammar.h"
#include "Node.h"
#include "Builtins.h"
#include "SExpression.h"
Go to the source code of this file.
Classes | |
struct | Combinators::cl_void |
struct | Combinators::CL |
class | Combinators::SKGrammar |
class | Combinators::ReductionException |
Namespaces | |
Combinators | |
Functions | |
template<typename Grammar_t > | |
Primitive< Combinators::CL > | Combinators::CL_I (Op::CL_I, BUILTIN_LAMBDA {assert(false);}) |
template<typename Grammar_t > | |
Primitive< Combinators::CL > | Combinators::CL_S (Op::CL_S, BUILTIN_LAMBDA {assert(false);}) |
template<typename Grammar_t > | |
Primitive< Combinators::CL > | Combinators::CL_K (Op::CL_K, BUILTIN_LAMBDA {assert(false);}) |
template<typename Grammar_t > | |
Primitive< Combinators::CL, Combinators::CL, Combinators::CL > | Combinators::CL_Apply (Op::CL_Apply, BUILTIN_LAMBDA {assert(false);}) |
void | Combinators::reduce (SExpression::SExpNode &n, int &remaining_calls) |
Combinator reduction, assuming that n is a SExpNode. More... | |
void | Combinators::reduce (SExpression::SExpNode &n) |
SExpression::SExpNode | Combinators::NodeToSExpNode (const Node &n) |
Node | Combinators::SExpNodeToNode (const SExpression::SExpNode &n) |
template<typename L > | |
void | Combinators::substitute (SExpression::SExpNode &n, const L &m) |
Variables | |
volatile sig_atomic_t | CTRL_C |
Combinators::SKGrammar | Combinators::skgrammar |
Combinators::ReductionException | Combinators::reduction_exception |
A grammar for SK combinatory logic. NOTE: CustomOps must be defined here.
A class that gets thrown when we've reduced too much.
volatile sig_atomic_t CTRL_C |