Mercurial > repo
annotate ibin/brachylog/Brachylog-master/src/transpile.pl @ 11865:318de151d0ec draft
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
author | HackEso <hackeso@esolangs.org> |
---|---|
date | Tue, 16 Jul 2019 21:37:27 +0000 |
parents | |
children |
rev | line source |
---|---|
11865
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
1 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
2 ____ ____ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
3 \ \ / / |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
4 \ \ ____ / / |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
5 \ \/ \/ / |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
6 \ /\ / BRACHYLOG |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
7 \ / \ / A terse declarative logic programming language |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
8 / \ / \ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
9 / \/ \ Written by Julien Cumin - 2017 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
10 / /\____/\ \ https://github.com/JCumin/Brachylog |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
11 / / ___ \ \ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
12 /___/ /__/ \___\ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
13 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
14 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
15 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
16 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
17 :- module(transpile, [parse/2, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
18 parse_no_file/2, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
19 parse_argument/2, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
20 contains_write/1 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
21 ]). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
22 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
23 :- use_module(tokenize). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
24 :- use_module(symbols). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
25 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
26 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
27 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
28 PARSE |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
29 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
30 parse(Code, TranspiledPath) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
31 parse_no_file(Code, Predicates), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
32 open(TranspiledPath, write, File), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
33 maplist(write_to_file(File), Predicates), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
34 close(File). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
35 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
36 parse_no_file(Code, Predicates) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
37 atom_chars(Code, SplittedCode), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
38 tokenize(SplittedCode, TokensNoOutputs), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
39 append_trailing_output(TokensNoOutputs, Tokens), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
40 fix_predicates(Tokens, FixedPredicates), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
41 fix_metapredicates(FixedPredicates, FixedMetapredicates), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
42 fill_implicit_variables(FixedMetapredicates, FilledTokens), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
43 fix_variables_superscripts(FilledTokens, FixedVariables, GlobalVariables), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
44 fix_lists(FixedVariables, FixedLists), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
45 fix_forks(FixedLists, FixedForks), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
46 fix_arrows(FixedForks, Program), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
47 atomic_list_concat(GlobalVariables, ',', G), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
48 atomic_list_concat(['[', G, ']'], GlobalVariablesAtom), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
49 transpile(Program, Predicates, GlobalVariablesAtom), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
50 !. |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
51 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
52 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
53 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
54 PARSE_ARGUMENT |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
55 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
56 parse_argument(Arg, Term) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
57 ( atom(Arg), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
58 AtomArg = Arg |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
59 ; \+ atom(Arg), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
60 term_to_atom(Arg, AtomArg) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
61 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
62 atom_chars(AtomArg, SplittedArg), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
63 tokenize(SplittedArg, Token), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
64 fix_variables_superscripts(Token, FixedSuperscripts, _), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
65 fix_lists(FixedSuperscripts, Program), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
66 transpile(Program, Parsed, '[]'), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
67 !, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
68 reverse(Parsed, [TempMainPredicate|_]), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
69 nth0(3, TempMainPredicate, Atom), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
70 atom_concat(',\n ', AtomT, Atom), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
71 atom_concat(ParsedArg, ' = Var_Input_Local', AtomT), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
72 term_to_atom(Term, ParsedArg) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
73 ; |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
74 throw('Incorrect variable format.'). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
75 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
76 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
77 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
78 APPEND_TRAILING_OUTPUT |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
79 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
80 append_trailing_output([], ['variable':'Output':'sup':'default']). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
81 append_trailing_output(['control':'\n'|T], ['variable':'Output':'sup':'default','control':'\n'|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
82 append_trailing_output(T, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
83 append_trailing_output(['control':'}'|T], ['variable':'Output':'sup':'default','control':'}'|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
84 append_trailing_output(T, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
85 append_trailing_output(['control':'⟩'|T], ['variable':'Output':'sup':'default','control':'⟩'|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
86 append_trailing_output(T, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
87 append_trailing_output(['control':'|'|T], ['variable':'Output':'sup':'default','control':'|'|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
88 append_trailing_output(T, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
89 append_trailing_output([H|T], [H|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
90 H \= 'control':'\n', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
91 H \= 'control':'}', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
92 H \= 'control':'⟩', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
93 H \= 'control':'|', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
94 append_trailing_output(T, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
95 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
96 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
97 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
98 FIX_PREDICATES'⟨', '⟩' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
99 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
100 fix_predicates(Tokens, FixedPredicates) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
101 fix_predicates(Tokens, 1, L), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
102 append(L, FixedPredicates). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
103 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
104 fix_predicates([], _, [[]]). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
105 fix_predicates(['control':'{'|T], I, [['predicate':PredName:0|Rest], ['control':'\n'|Predicate]|AllOtherPredicates]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
106 atomic_list_concat(['brachylog_predicate_',I], PredName), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
107 J is I + 1, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
108 fix_predicates_(T, J, [Predicate|OtherPredicates1], Z, Remaining), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
109 fix_predicates(Remaining, Z, [Rest|OtherPredicates2]), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
110 append(OtherPredicates1, OtherPredicates2, AllOtherPredicates). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
111 fix_predicates(['control':'⟨'|T], I, [['predicate':PredName:0|Rest], ['control':'\n','fork':'start'|Predicate]|AllOtherPredicates]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
112 atomic_list_concat(['brachylog_predicate_',I], PredName), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
113 J is I + 1, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
114 fix_predicates_(T, J, [Predicate|OtherPredicates1], Z, Remaining), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
115 fix_predicates(Remaining, Z, [Rest|OtherPredicates2]), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
116 append(OtherPredicates1, OtherPredicates2, AllOtherPredicates). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
117 fix_predicates(['control':'\n'|T], I, [[],['control':'\n'|Rest]|OtherPredicates]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
118 J is I + 1, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
119 fix_predicates(T, J, [Rest|OtherPredicates]). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
120 fix_predicates([Type:A|T], I, [[Type:A|Rest]|OtherPredicates]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
121 \+ (Type = 'control', A = '{'), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
122 \+ (Type = 'control', A = '}'), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
123 \+ (Type = 'control', A = '⟨'), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
124 \+ (Type = 'control', A = '⟩'), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
125 \+ (Type = 'control', A = '\n'), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
126 fix_predicates(T, I, [Rest|OtherPredicates]). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
127 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
128 fix_predicates_([], _, [[]]). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
129 fix_predicates_(['control':'{'|T], I, [['predicate':PredName:0|Rest], ['control':'\n'|Predicate]|AllOtherPredicates], Z, Remaining) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
130 atomic_list_concat(['brachylog_predicate_',I], PredName), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
131 J is I + 1, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
132 fix_predicates_(T, J, [Predicate|OtherPredicates1], Z2, Remaining2), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
133 fix_predicates_(Remaining2, Z2, [Rest|OtherPredicates2], Z, Remaining), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
134 append(OtherPredicates1, OtherPredicates2, AllOtherPredicates). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
135 fix_predicates_(['control':'⟨'|T], I, [['predicate':PredName:0|Rest], ['control':'\n','fork':'start'|Predicate]|AllOtherPredicates], Z, Remaining) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
136 atomic_list_concat(['brachylog_predicate_',I], PredName), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
137 J is I + 1, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
138 fix_predicates_(T, J, [Predicate|OtherPredicates1], Z2, Remaining2), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
139 fix_predicates_(Remaining2, Z2, [Rest|OtherPredicates2], Z, Remaining), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
140 append(OtherPredicates1, OtherPredicates2, AllOtherPredicates). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
141 fix_predicates_(['control':'}'|T], I, [[]], I, T). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
142 fix_predicates_(['control':'⟩'|T], I, [['fork':'end']], I, T). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
143 fix_predicates_([Type:A|T], I, [[Type:A|Rest]|OtherPredicates], Z, Remaining) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
144 \+ (Type = 'control', A = '{'), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
145 \+ (Type = 'control', A = '}'), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
146 \+ (Type = 'control', A = '⟨'), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
147 \+ (Type = 'control', A = '⟩'), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
148 \+ (Type = 'control', A = '\n'), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
149 fix_predicates_(T, I, [Rest|OtherPredicates], Z, Remaining). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
150 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
151 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
152 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
153 FIX_METAPREDICATES |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
154 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
155 fix_metapredicates([], []). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
156 fix_metapredicates(['predicate':PredName:Sub,'metapredicate':MetapredName:Sup|T], ['predicate':PredName:Sub:MetapredName:Sup|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
157 fix_metapredicates(T, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
158 fix_metapredicates(['predicate':PredName:Sub|T], ['predicate':PredName:Sub:'no':0|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
159 fix_metapredicates(T, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
160 fix_metapredicates([H|T], [H|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
161 fix_metapredicates(T, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
162 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
163 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
164 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
165 FILL_IMPLICIT_VARIABLES |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
166 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
167 fill_implicit_variables(Tokens, Program) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
168 fill_implicit_variables(Tokens, 0, Program). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
169 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
170 fill_implicit_variables([], _, []). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
171 fill_implicit_variables(['control':':','predicate':A|T], I, ['control':':','predicate':A|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
172 fill_implicit_variables(T, I, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
173 fill_implicit_variables(['predicate':A,Type:B|T], I, ['predicate':A,'variable':V|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
174 Type \= 'variable', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
175 atom_concat('V', I, V), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
176 J is I + 1, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
177 fill_implicit_variables([Type:B|T], J, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
178 fill_implicit_variables(['predicate':A], I, ['predicate':A,'variable':V]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
179 atom_concat('V', I, V). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
180 fill_implicit_variables(['predicate':A,'variable':B|T], I, ['predicate':A,'variable':B|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
181 fill_implicit_variables(T, I, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
182 fill_implicit_variables(['control':H,Type:B|T], I, ['control':H,'variable':V|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
183 Type \= 'variable', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
184 ( H = '∧' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
185 ; H = '∨' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
186 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
187 atom_concat('V', I, V), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
188 J is I + 1, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
189 fill_implicit_variables([Type:B|T], J, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
190 fill_implicit_variables(['control':H,'variable':B,Type:C|T], I, ['control':H,'variable':B,'variable':V|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
191 Type \= 'variable', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
192 ( H = '↖' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
193 ; H = '↙' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
194 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
195 atom_concat('V', I, V), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
196 J is I + 1, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
197 fill_implicit_variables([Type:C|T], J, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
198 fill_implicit_variables([Type:A|T], I, [Type:A|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
199 Type \= 'predicate', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
200 \+ (Type = 'control', A = ':', T = ['predicate':_|_]), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
201 \+ (Type = 'control', A = '∧', T \= ['variable':_|_]), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
202 \+ (Type = 'control', A = '∨', T \= ['variable':_|_]), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
203 \+ (Type = 'control', A = '↖', T \= ['variable':_|_]), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
204 \+ (Type = 'control', A = '↙', T \= ['variable':_|_]), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
205 fill_implicit_variables(T, I, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
206 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
207 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
208 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
209 FIX_VARIABLES_SUPERSCRIPTS |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
210 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
211 fix_variables_superscripts(Input, Output, GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
212 fix_variables_superscripts_(Input, Output, GlobVars), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
213 sort(GlobVars, GlobalVariables). % Remove duplicates |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
214 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
215 fix_variables_superscripts_([], [], []). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
216 fix_variables_superscripts_(['variable':A:'sup':Sup|T], ['variable':V|T2], [V|GlobalVariables]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
217 atomic_list_concat(['integer', SupAtom], ':', Sup), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
218 atom_number(SupAtom, J), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
219 atomic_list_concat(['Var_',A,'_',J], V), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
220 fix_variables_superscripts_(T, T2, GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
221 fix_variables_superscripts_(['variable':A:'sup':'default'|T], ['variable':V|T2], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
222 atomic_list_concat(['Var_',A,'_Local'], V), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
223 fix_variables_superscripts_(T, T2, GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
224 fix_variables_superscripts_(['variable':List|T], ['variable':FixedList|T2], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
225 is_list(List), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
226 fix_variables_superscripts_(List, FixedList, Vars), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
227 fix_variables_superscripts_(T, T2, GlobalVariables2), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
228 append(Vars, GlobalVariables2, GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
229 fix_variables_superscripts_([X|T], [X|T2], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
230 fix_variables_superscripts_(T, T2, GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
231 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
232 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
233 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
234 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
235 FIX_LISTS |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
236 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
237 fix_lists([], []). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
238 fix_lists(['variable':List|T], ['variable':FixedList|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
239 is_list(List), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
240 fix_list(List, FixedList), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
241 fix_lists(T, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
242 fix_lists([X|T], [X|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
243 ( X = 'variable':L, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
244 \+ (is_list(L)) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
245 ; X \= 'variable':_ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
246 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
247 fix_lists(T, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
248 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
249 fix_list([], []). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
250 fix_list(['control':','|T], T2) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
251 fix_list(T, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
252 fix_list([X|T], [Y|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
253 X \= 'control':',', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
254 ( X = 'variable':L, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
255 is_list(L), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
256 fix_list(L, Y) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
257 ; X = 'variable':Y |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
258 ; X = 'predicate':_, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
259 Y = X |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
260 ; Y = X |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
261 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
262 fix_list(T, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
263 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
264 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
265 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
266 FIX_FORKS |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
267 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
268 fix_forks(L, Z) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
269 fix_forks(L, 0, Z). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
270 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
271 fix_forks([], _, []). % Ignore each useless implicit var after |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
272 fix_forks(['fork':'start', F1, _, F2, Output, 'fork':'end'|T], I, ['control':'unpair','variable':V1,F1,Output,F2,'variable':V1,'control':'∧'|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
273 atom_concat('Fork', I, V1), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
274 J is I + 1, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
275 fix_forks(T, J, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
276 fix_forks(['fork':'start', F1, _, F2, _, F3, Output, 'fork':'end'|T], I, ['control':'&',F1,'variable':V1,'control':'&',F3,'variable':V2,'control':'∧','variable':V1,'control':';','variable':V2,F2,Output|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
277 atom_concat('Fork', I, V1), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
278 J is I + 1, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
279 atom_concat('Fork', J, V2), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
280 K is I + 1, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
281 fix_forks(T, K, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
282 fix_forks([H|T], I, [H|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
283 dif(H, 'fork':'start'), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
284 fix_forks(T, I, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
285 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
286 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
287 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
288 FIX_ARROWS |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
289 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
290 fix_arrows([], []). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
291 fix_arrows(['predicate':P:_:Meta:Sup,'variable':_,'control':'↙','variable':V|T], T2) :- !, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
292 ( atom(V) -> |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
293 V = VA |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
294 ; term_to_atom(V, VA) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
295 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
296 fix_arrows(['predicate':P:VA:Meta:Sup|T], T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
297 fix_arrows(['predicate':P:Sub:Meta:_,'variable':_,'control':'↖','variable':V|T], T2) :- !, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
298 ( atom(V) -> |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
299 V = VA |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
300 ; term_to_atom(V, VA) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
301 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
302 fix_arrows(['predicate':P:Sub:Meta:VA|T], T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
303 fix_arrows(['predicate':P:_:Meta:Sup,'control':'↙','variable':V|T], T2) :- !, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
304 ( atom(V) -> |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
305 V = VA |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
306 ; term_to_atom(V, VA) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
307 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
308 fix_arrows(['predicate':P:VA:Meta:Sup|T], T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
309 fix_arrows(['predicate':P:Sub:Meta:_,'control':'↖','variable':V|T], T2) :- !, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
310 ( atom(V) -> |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
311 V = VA |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
312 ; term_to_atom(V, VA) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
313 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
314 fix_arrows(['predicate':P:Sub:Meta:VA|T], T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
315 fix_arrows([H|T], [H|T2]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
316 fix_arrows(T, T2). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
317 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
318 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
319 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
320 TRANSPILE |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
321 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
322 transpile(Program, [[':- style_check(-singleton).'], |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
323 [':- use_module(library(clpfd)).'], |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
324 [':- use_module(predicates).'], |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
325 [':- use_module(metapredicates).'], |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
326 [':- use_module(constraint_variables).\n'], |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
327 [MainPredHeader, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
328 ConstraintVariables, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
329 ' (1=1'|MainPred]|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
330 atomic_list_concat(['brachylog_main(', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
331 GlobalVariables, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
332 ',_, Var_Input_Local,Var_Output_Local) :-\n', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
333 ' Name = brachylog_main,\n', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
334 ' GlobalVariables = ', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
335 GlobalVariables,',\n', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
336 ' nb_setval(\'declw\',[]),\n'], % Initialize declarative write variable |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
337 MainPredHeader), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
338 constraint_variables(GlobalVariables, ConstraintVariables), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
339 transpile_(Program, 'Var_Input_Local', no, no, 0, 0, [T|OtherPredicates], GlobalVariables), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
340 reverse(T, [_|RT]), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
341 reverse(RT, T2), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
342 append(T2, ['\n', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
343 ' ),\n', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
344 ' (', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
345 '(Var_Output_Local = integer:_ ; ', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
346 'Var_Output_Local = [_|_], ', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
347 'forall(member(E, Var_Output_Local), E = integer:_)) ', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
348 '-> brachylog_label(default, Var_Output_Local, _) ', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
349 '; true),\n', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
350 ' nb_getval(\'declw\', DeclwFinal),\n', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
351 ' maplist(write, DeclwFinal).'], % execute declarative write |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
352 MainPred). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
353 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
354 transpile_([], _, _, _, _, _, [['\n ).\n']], _). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
355 transpile_(['variable':B|T], A, Reverse, Negate, AppendNumber, PredNumber, [[Unification|T2]|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
356 A \= 'nothing', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
357 ( is_list(A), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
358 brachylog_list_to_atom(A, Var1) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
359 ; A = Type:L, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
360 term_to_atom(Type:L, Var1) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
361 ; A = Var1 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
362 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
363 ( is_list(B), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
364 brachylog_list_to_atom(B, Var2) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
365 ; B = _:_, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
366 term_to_atom(B, Var2) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
367 ; Var2 = B |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
368 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
369 ( Negate = yes, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
370 UnificationAtom = ' \\= ' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
371 ; Negate = no, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
372 UnificationAtom = ' = ' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
373 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
374 ( Reverse = no, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
375 atomic_list_concat([',\n ',Var2,UnificationAtom,Var1], Unification), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
376 transpile_(T, B, no, no, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
377 ; Reverse = yes, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
378 atomic_list_concat([',\n ',Var1,UnificationAtom,Var2], Unification), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
379 transpile_(T, B, no, no, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
380 ). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
381 transpile_(['variable':B|T], 'nothing', _, _, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
382 transpile_(T, B, no, no, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
383 transpile_(['predicate':P:Sub:Meta:Sup,'variable':B|T], A, Reverse, Negate, AppendNumber, PredNumber, [[Predicate|T2]|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
384 A \= 'nothing', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
385 ( P = 'brachylog_call_predicate', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
386 ( Sub = 'default' -> |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
387 RealSub = 'Name-GlobalVariables' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
388 ; atomic_list_concat(['(',Sub,')-','GlobalVariables'], RealSub) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
389 ) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
390 ; P \= 'brachylog_call_predicate', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
391 RealSub = Sub |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
392 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
393 ( is_list(A), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
394 brachylog_list_to_atom(A, Var1) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
395 ; A = Type:L, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
396 term_to_atom(Type:L, Var1) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
397 ; A = Var1 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
398 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
399 ( is_list(B), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
400 brachylog_list_to_atom(B, Var2) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
401 ; B = _:_, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
402 term_to_atom(B, Var2) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
403 ; Var2 = B |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
404 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
405 ( Negate = yes, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
406 NegateAtom = '\\+ ' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
407 ; Negate = no, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
408 NegateAtom = '' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
409 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
410 ( Reverse = no -> |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
411 PredName = P |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
412 ; atomic_list_concat([P,'_reversed'], PredName) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
413 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
414 ( atomic_list_concat(['brachylog','predicate',_], '_', P) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
415 -> atomic_list_concat([GlobalVariables,','], GlobVars) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
416 ; GlobVars = '' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
417 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
418 ( Meta = no -> |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
419 atomic_list_concat([',\n ',NegateAtom,PredName,'(',GlobVars,RealSub,',',Var1,',',Var2,')'], Predicate) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
420 ; ( atomic_list_concat(['brachylog','predicate',_], '_', P) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
421 -> atomic_list_concat([GlobalVariables,','], GlobVarsMeta) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
422 ; GlobVarsMeta = 'ignore,' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
423 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
424 atomic_list_concat([',\n ',NegateAtom,Meta,'(',GlobVarsMeta,Sup,',',PredName,',',RealSub,',',Var1,',',Var2,')'], Predicate) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
425 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
426 transpile_(T, B, no, no, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
427 transpile_(['control':'∧'|T], _, _, _, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
428 transpile_(T, 'nothing', no, no, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
429 transpile_(['control':'&'|T], _, _, _, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
430 transpile_(T, 'Var_Input_Local', no, no, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
431 transpile_(['control':'`'|T], B, _, _, AppendNumber, PredNumber, [['\n *->\n 1=1'|T2]|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
432 transpile_(T, B, no, no, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
433 transpile_(['control':'∨'|T], _, _, _, AppendNumber, PredNumber, [['\n ;\n 1=1'|T2]|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
434 transpile_(T, 'nothing', no, no, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
435 transpile_(['control':'('|T], B, _, Negate, AppendNumber, PredNumber, [[Parenthesis|T2]|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
436 ( Negate = yes, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
437 Parenthesis = ',\n \\+ (\n 1=1' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
438 ; Negate = no, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
439 Parenthesis = ',\n (\n 1=1' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
440 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
441 transpile_(T, B, no, no, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
442 transpile_(['control':')'|T], B, _, _, AppendNumber, PredNumber, [['\n )'|T2]|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
443 transpile_(T, B, no, no, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
444 transpile_(['control':'!'|T], B, _, _, AppendNumber, PredNumber, [[',\n !'|T2]|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
445 transpile_(T, B, no, no, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
446 transpile_(['control':'⊥'|T], B, _, _, AppendNumber, PredNumber, [[',\n false'|T2]|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
447 transpile_(T, B, no, no, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
448 transpile_(['control':'~'|T], B, Reverse, Negate, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
449 ( Reverse = yes, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
450 NewReverse = no |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
451 ; Reverse = no, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
452 NewReverse = yes |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
453 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
454 transpile_(T, B, NewReverse, Negate, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
455 transpile_(['control':'¬'|T], B, Reverse, Negate, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
456 ( Negate = yes, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
457 NewNegate = no |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
458 ; Negate = no, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
459 NewNegate = yes |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
460 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
461 transpile_(T, B, Reverse, NewNegate, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
462 transpile_(['control':'unpair','variable':A|T], B, _, _, AppendNumber, PredNumber, [[Unpair|T2]|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
463 ( A = TypeA:LA, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
464 term_to_atom(TypeA:LA, TailElem) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
465 ; A = TailElem |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
466 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
467 ( B = TypeB:LB, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
468 term_to_atom(TypeB:LB, Pair) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
469 ; B = Pair |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
470 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
471 atomic_list_concat(['UnpairTemp',AppendNumber],HeadElem), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
472 atomic_list_concat([',\n ', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
473 Pair,'=[',HeadElem,',',TailElem,']'],Unpair), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
474 NewAppendNumber is AppendNumber + 1, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
475 transpile_(T, HeadElem, no, no, NewAppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
476 transpile_(['control':';',Type:A|T], B, _, _, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
477 ( Type = 'variable' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
478 ; Type = 'predicate' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
479 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
480 append([B], [A], NewVar), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
481 transpile_(T, NewVar, no, no, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
482 transpile_(['control':',','variable':A|T], B, _, _, AppendNumber, PredNumber, [[Append|T2]|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
483 ( is_list(A), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
484 brachylog_list_to_atom(A, Arg1) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
485 ; A = TypeA:LA, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
486 term_to_atom(TypeA:LA, Arg1) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
487 ; A = Arg1 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
488 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
489 ( is_list(B), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
490 brachylog_list_to_atom(B, Arg2) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
491 ; B = TypeB:LB, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
492 term_to_atom(TypeB:LB, Arg2) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
493 ; B = Arg2 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
494 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
495 atomic_list_concat(['AppendTemp',AppendNumber],TempVar), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
496 atomic_list_concat([',\n ', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
497 '((',Arg2,' == [], \\+ is_brachylog_list(',Arg1,')) -> ',TempVar,' = [',Arg1,'] ; ', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
498 'brachylog_concatenate(default,', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
499 '[',Arg2,',',Arg1,']', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
500 ',',TempVar,') -> true ; is_brachylog_list(', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
501 Arg2, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
502 '), brachylog_concatenate(default,', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
503 '[',Arg2,',[',Arg1,']]', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
504 ',',TempVar,') -> true ; brachylog_concatenate(default,', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
505 '[[',Arg2,'],[',Arg1,']],',TempVar,'))' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
506 ], Append), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
507 NewAppendNumber is AppendNumber + 1, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
508 transpile_(T, TempVar, no, no, NewAppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
509 transpile_(['control':'\n'|T], _, _, _, AppendNumber, PredNumber, [['\n ).\n'],[ReversedPred],[PredHead|T2]|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
510 J is PredNumber + 1, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
511 constraint_variables(GlobalVariables, ConstraintVariables), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
512 atomic_list_concat(['brachylog_predicate_', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
513 J, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
514 '_reversed(', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
515 GlobalVariables, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
516 ',_, Input, Output', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
517 ') :-\n', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
518 ' brachylog_predicate_', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
519 J, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
520 '(', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
521 GlobalVariables, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
522 ',_, Output, Input', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
523 ').\n'], ReversedPred), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
524 atomic_list_concat(['brachylog_predicate_', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
525 J, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
526 '(', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
527 GlobalVariables, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
528 ',_, ', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
529 'Var_Input_Local', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
530 ',Var_Output_Local', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
531 ') :-\n Name = brachylog_predicate_', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
532 J, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
533 ',\n GlobalVariables = ', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
534 GlobalVariables, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
535 ',\n', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
536 ConstraintVariables, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
537 ' (1=1'], PredHead), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
538 transpile_(T, 'Var_Input_Local', no, no, AppendNumber, J, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
539 transpile_(['control':'|'|T], _, _, _, AppendNumber, PredNumber, [['\n ).\n'],[PredHead|T2]|OtherPredicates], GlobalVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
540 ( PredNumber = 0, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
541 PredName = 'brachylog_main' |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
542 ; PredNumber \= 0, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
543 atomic_list_concat(['brachylog_predicate_',PredNumber], PredName) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
544 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
545 constraint_variables(GlobalVariables, ConstraintVariables), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
546 atomic_list_concat([PredName, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
547 '(', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
548 GlobalVariables, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
549 ',_, ', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
550 'Var_Input_Local', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
551 ',Var_Output_Local', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
552 ') :-\n Name = ', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
553 PredName, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
554 ',\n GlobalVariables = ', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
555 GlobalVariables, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
556 ',\n', |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
557 ConstraintVariables, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
558 ' (1=1'], PredHead), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
559 transpile_(T, 'Var_Input_Local', no, no, AppendNumber, PredNumber, [T2|OtherPredicates], GlobalVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
560 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
561 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
562 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
563 CONTAINS_WRITE |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
564 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
565 contains_write(Code) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
566 atom_chars(Code, SplittedCode), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
567 tokenize(SplittedCode, Tokens), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
568 fix_predicates(Tokens, FixedPredicates), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
569 ( member(predicate:brachylog_write:_, FixedPredicates) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
570 ; member(predicate:brachylog_writeln:_, FixedPredicates) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
571 ). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
572 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
573 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
574 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
575 CONSTRAINT_VARIABLES |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
576 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
577 constraint_variables(GlobalVariables, ConstraintVariables) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
578 atom_chars(GlobalVariables, [_|Gs]), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
579 reverse(Gs, [_|RGs]), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
580 reverse(RGs, RRGs), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
581 atomic_list_concat(RRGs, GGs), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
582 atomic_list_concat(GlobVars, ',', GGs), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
583 findall(S, (member(X, GlobVars), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
584 atomic_list_concat(['Var', Name, _], '_', X), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
585 atom_chars(Name, CName), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
586 reverse(CName, [_,'t','n','i','a','r','t','s','n','o','C']), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
587 constraint_variable(X, S)), Ss), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
588 atomic_list_concat(Ss, GlobalConstraintVariables), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
589 findall(T, (member(X, ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
590 atomic_list_concat([' constraint',X,'(Var_Constraint',X,'_Local','),\n'], T)), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
591 Ts |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
592 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
593 atomic_list_concat(Ts, LocalConstraintVariables), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
594 atomic_list_concat([GlobalConstraintVariables, LocalConstraintVariables], ConstraintVariables). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
595 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
596 constraint_variable(X, S) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
597 atomic_list_concat(['Var', ConstraintName, _], '_', X), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
598 atom_chars(ConstraintName, [C|Cs]), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
599 downcase_atom(C, CDown), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
600 atomic_list_concat([CDown|Cs], PredName), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
601 atomic_list_concat([' ',PredName,'(',X,'),\n'], S). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
602 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
603 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
604 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
605 BRACHYLOG_LIST_TO_ATOM |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
606 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
607 brachylog_list_to_atom(List, Atom) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
608 brachylog_list_to_atom_(List, T2), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
609 atomic_list_concat(['[',T2,']'], Atom). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
610 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
611 brachylog_list_to_atom_([], ''). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
612 brachylog_list_to_atom_([A], AtomA) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
613 ( is_list(A), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
614 brachylog_list_to_atom(A, AtomA) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
615 ; A = _:_, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
616 term_to_atom(A, AtomA) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
617 ; \+ is_list(A), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
618 A \= _:_, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
619 AtomA = A |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
620 ). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
621 brachylog_list_to_atom_([A,B|T], Atom) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
622 ( is_list(A), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
623 brachylog_list_to_atom(A, AtomA) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
624 ; A = _:_, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
625 term_to_atom(A, AtomA) |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
626 ; \+ is_list(A), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
627 A \= _:_, |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
628 AtomA = A |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
629 ), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
630 brachylog_list_to_atom_([B|T], T2), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
631 atomic_list_concat([AtomA,',',T2], Atom). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
632 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
633 |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
634 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
635 WRITE_TO_FILE |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
636 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
637 write_to_file(File, []) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
638 write(File, '\n\n'). |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
639 write_to_file(File, [H|T]) :- |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
640 write(File, H), |
318de151d0ec
<b_jonas> python3 -cimport os,zipfile; os.chdir("ibin/brachylog"); zipfile.ZipFile("master.zip").extractall()
HackEso <hackeso@esolangs.org>
parents:
diff
changeset
|
641 write_to_file(File, T). |