107 lines
3.8 KiB
Plaintext
107 lines
3.8 KiB
Plaintext
def concept one as 1
|
|
def concept two as 2
|
|
def concept three as 3
|
|
def concept four as 4
|
|
def concept five as 5
|
|
def concept six as 6
|
|
def concept seven as 7
|
|
def concept eight as 8
|
|
def concept nine as 9
|
|
def concept ten as 10
|
|
def concept eleven as 11
|
|
def concept twelve as 12
|
|
def concept thirteen as 13
|
|
def concept fourteen as 14
|
|
def concept fifteen as 15
|
|
def concept sixteen as 16
|
|
def concept seventeen as 17
|
|
def concept eighteen as 18
|
|
def concept nineteen as 19
|
|
def concept twenty as 20
|
|
def concept number
|
|
one isa number
|
|
two isa number
|
|
three isa number
|
|
four isa number
|
|
five isa number
|
|
six isa number
|
|
seven isa number
|
|
eight isa number
|
|
nine isa number
|
|
ten isa number
|
|
eleven isa number
|
|
twelve isa number
|
|
thirteen isa number
|
|
fourteen isa number
|
|
fifteen isa number
|
|
sixteen isa number
|
|
seventeen isa number
|
|
eighteen isa number
|
|
nineteen isa number
|
|
twenty isa number
|
|
def concept twenties from bnf twenty number where number < 10 as twenty + number
|
|
twenties isa number
|
|
def concept thirty as 30
|
|
thirty isa number
|
|
def concept thirties from bnf thirty number where number < 10 as thirty + number
|
|
thirties isa number
|
|
def concept forty as 40
|
|
forty isa number
|
|
def concept forties from bnf forty number where number < 10 as forty + number
|
|
forties isa number
|
|
def concept fifty as 50
|
|
fifty isa number
|
|
def concept fifties from bnf fifty number where number < 10 as fifty + number
|
|
fifties isa number
|
|
def concept sixty as 60
|
|
sixty isa number
|
|
def concept sixties from bnf sixty number where number < 10 as sixty + number
|
|
sixties isa number
|
|
def concept seventy as 70
|
|
seventy isa number
|
|
def concept seventies from bnf seventy number where number < 10 as seventy + number
|
|
seventies isa number
|
|
def concept eighty as 80
|
|
eighty isa number
|
|
def concept eighties from bnf eighty number where number < 10 as eighty + number
|
|
eighties isa number
|
|
def concept ninety as 90
|
|
ninety isa number
|
|
def concept nineties from bnf ninety number where number < 10 as ninety + number
|
|
nineties isa number
|
|
def concept one hundred as 100
|
|
one hundred isa number
|
|
def concept hundreds from bnf number=n1 'hundred' 'and' number=n2 where n1 < 10 and n2 < 100 as n1 * 100 + n2
|
|
hundreds isa number
|
|
def concept hundreds from bnf number 'hundred' where number < 10 as number * 100
|
|
last_created_concept() is number
|
|
def concept thousands from bnf number 'thousand' where number < 1000 as number * 1000
|
|
thousands isa number
|
|
def concept thousands from bnf number=n1 'thousand' 'and' number=n2 as n1 * 1000 + n2 where n1 < 1000 and n2 < 1000
|
|
last_created_concept() is number
|
|
def concept history as history()
|
|
def concept plus from a plus b as a + b
|
|
def concept minus from a minus b as a - b
|
|
def concept multiplied from a multiplied by b as a * b
|
|
def concept divided from a divided by b as a * b
|
|
set_is_greater_than(__PRECEDENCE, multiplied, plus)
|
|
set_is_greater_than(__PRECEDENCE, divided, plus)
|
|
set_is_greater_than(__PRECEDENCE, multiplied, minus)
|
|
set_is_greater_than(__PRECEDENCE, divided, minus)
|
|
def concept explain as get_results() | filter("id == 0") | recurse(2)
|
|
def concept explain last as get_last_results() | filter("id == 0") | recurse(2)
|
|
def concept explain x as get_results() | filter(f"id == {x}") | recurse(3) where x
|
|
def concept explain x '--recurse' y as get_results() | filter(f"id == {x}") | recurse(y) where x,y
|
|
set_isa(c:explain:, __COMMAND)
|
|
set_isa(c:explain last:, __COMMAND)
|
|
set_isa(c:explain x:, __COMMAND)
|
|
def concept precedence a > precedence b as set_is_greater_than(__PRECEDENCE, a, b)
|
|
set_isa(c:precedence a > precedence b:, __COMMAND)
|
|
def concept x is a command as set_isa(x, __COMMAND)
|
|
set_isa(c:x is a command:, __COMMAND)
|
|
def concept q from q ? as question(q) pre is_question()
|
|
set_is_lesser(__PRECEDENCE, q)
|
|
def concept x is a 'concept' as isinstance(x, Concept) pre is_question()
|
|
def concept x is a y as isa(x,y) pre is_question()
|
|
def concept explain x values where x as get_results() | filter(f"id=={x}") | format_d
|
|
set_isa(c:explain x values:, __COMMAND) |