1+
2+ <!doctype html>
3+ < html lang ="en " class ="no-js ">
4+ < head >
5+
6+ < meta charset ="utf-8 ">
7+ < meta name ="viewport " content ="width=device-width,initial-scale=1 ">
8+
9+
10+
11+
12+
13+
14+
15+
16+
17+ < link rel ="icon " href ="/assets/images/favicon.png ">
18+ < meta name ="generator " content ="mkdocs-1.6.1, mkdocs-material-9.7.5 ">
19+
20+
21+
22+ < title > Boris Dev</ title >
23+
24+
25+
26+ < link rel ="stylesheet " href ="/assets/stylesheets/main.484c7ddc.min.css ">
27+
28+
29+ < link rel ="stylesheet " href ="/assets/stylesheets/palette.ab4e12ef.min.css ">
30+
31+
32+
33+
34+
35+
36+
37+
38+
39+
40+
41+
42+ < link rel ="preconnect " href ="https://fonts.gstatic.com " crossorigin >
43+ < link rel ="stylesheet " href ="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback ">
44+ < style > : root {--md-text-font : "Roboto" ;--md-code-font : "Roboto Mono" }</ style >
45+
46+
47+
48+ < script > __md_scope = new URL ( "/" , location ) , __md_hash = e => [ ...e ] . reduce ( ( ( e , _ ) => ( e << 5 ) - e + _ . charCodeAt ( 0 ) ) , 0 ) , __md_get = ( e , _ = localStorage , t = __md_scope ) => JSON . parse ( _ . getItem ( t . pathname + "." + e ) ) , __md_set = ( e , _ , t = localStorage , a = __md_scope ) => { try { t . setItem ( a . pathname + "." + e , JSON . stringify ( _ ) ) } catch ( e ) { } } </ script >
49+
50+
51+
52+
53+
54+ </ head >
55+
56+
57+
58+
59+
60+
61+
62+
63+
64+ < body dir ="ltr " data-md-color-scheme ="default " data-md-color-primary ="deep-purple " data-md-color-accent ="purple ">
65+
66+
67+ < input class ="md-toggle " data-md-toggle ="drawer " type ="checkbox " id ="__drawer " autocomplete ="off ">
68+ < input class ="md-toggle " data-md-toggle ="search " type ="checkbox " id ="__search " autocomplete ="off ">
69+ < label class ="md-overlay " for ="__drawer "> </ label >
70+ < div data-md-component ="skip ">
71+
72+ </ div >
73+ < div data-md-component ="announce ">
74+
75+ </ div >
76+
77+
78+
79+
80+
81+
82+ < header class ="md-header md-header--shadow " data-md-component ="header ">
83+ < nav class ="md-header__inner md-grid " aria-label ="Header ">
84+ < a href ="/. " title ="Boris Dev " class ="md-header__button md-logo " aria-label ="Boris Dev " data-md-component ="logo ">
85+
86+
87+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54 "/> </ svg >
88+
89+ </ a >
90+ < label class ="md-header__button md-icon " for ="__drawer ">
91+
92+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z "/> </ svg >
93+ </ label >
94+ < div class ="md-header__title " data-md-component ="header-title ">
95+ < div class ="md-header__ellipsis ">
96+ < div class ="md-header__topic ">
97+ < span class ="md-ellipsis ">
98+ Boris Dev
99+ </ span >
100+ </ div >
101+ < div class ="md-header__topic " data-md-component ="header-topic ">
102+ < span class ="md-ellipsis ">
103+
104+
105+
106+ </ span >
107+ </ div >
108+ </ div >
109+ </ div >
110+
111+
112+ < form class ="md-header__option " data-md-component ="palette ">
113+
114+
115+
116+
117+ < input class ="md-option " data-md-color-media ="" data-md-color-scheme ="default " data-md-color-primary ="deep-purple " data-md-color-accent ="purple " aria-label ="Switch to dark mode " type ="radio " name ="__palette " id ="__palette_0 ">
118+
119+ < label class ="md-header__button md-icon " title ="Switch to dark mode " for ="__palette_1 " hidden >
120+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M12 8a4 4 0 0 0-4 4 4 4 0 0 0 4 4 4 4 0 0 0 4-4 4 4 0 0 0-4-4m0 10a6 6 0 0 1-6-6 6 6 0 0 1 6-6 6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12z "/> </ svg >
121+ </ label >
122+
123+
124+
125+
126+
127+ < input class ="md-option " data-md-color-media ="" data-md-color-scheme ="slate " data-md-color-primary ="deep-purple " data-md-color-accent ="purple " aria-label ="Switch to light mode " type ="radio " name ="__palette " id ="__palette_1 ">
128+
129+ < label class ="md-header__button md-icon " title ="Switch to light mode " for ="__palette_0 " hidden >
130+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M12 18c-.89 0-1.74-.2-2.5-.55C11.56 16.5 13 14.42 13 12s-1.44-4.5-3.5-5.45C10.26 6.2 11.11 6 12 6a6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12z "/> </ svg >
131+ </ label >
132+
133+
134+ </ form >
135+
136+
137+
138+ < script > var palette = __md_get ( "__palette" ) ; if ( palette && palette . color ) { if ( "(prefers-color-scheme)" === palette . color . media ) { var media = matchMedia ( "(prefers-color-scheme: light)" ) , input = document . querySelector ( media . matches ?"[data-md-color-media='(prefers-color-scheme: light)']" :"[data-md-color-media='(prefers-color-scheme: dark)']" ) ; palette . color . media = input . getAttribute ( "data-md-color-media" ) , palette . color . scheme = input . getAttribute ( "data-md-color-scheme" ) , palette . color . primary = input . getAttribute ( "data-md-color-primary" ) , palette . color . accent = input . getAttribute ( "data-md-color-accent" ) } for ( var [ key , value ] of Object . entries ( palette . color ) ) document . body . setAttribute ( "data-md-color-" + key , value ) } </ script >
139+
140+
141+
142+
143+
144+ < label class ="md-header__button md-icon " for ="__search ">
145+
146+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5 "/> </ svg >
147+ </ label >
148+ < div class ="md-search " data-md-component ="search " role ="dialog ">
149+ < label class ="md-search__overlay " for ="__search "> </ label >
150+ < div class ="md-search__inner " role ="search ">
151+ < form class ="md-search__form " name ="search ">
152+ < input type ="text " class ="md-search__input " name ="query " aria-label ="Search " placeholder ="Search " autocapitalize ="off " autocorrect ="off " autocomplete ="off " spellcheck ="false " data-md-component ="search-query " required >
153+ < label class ="md-search__icon md-icon " for ="__search ">
154+
155+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5 "/> </ svg >
156+
157+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z "/> </ svg >
158+ </ label >
159+ < nav class ="md-search__options " aria-label ="Search ">
160+
161+ < button type ="reset " class ="md-search__icon md-icon " title ="Clear " aria-label ="Clear " tabindex ="-1 ">
162+
163+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z "/> </ svg >
164+ </ button >
165+ </ nav >
166+
167+ </ form >
168+ < div class ="md-search__output ">
169+ < div class ="md-search__scrollwrap " tabindex ="0 " data-md-scrollfix >
170+ < div class ="md-search-result " data-md-component ="search-result ">
171+ < div class ="md-search-result__meta ">
172+ Initializing search
173+ </ div >
174+ < ol class ="md-search-result__list " role ="presentation "> </ ol >
175+ </ div >
176+ </ div >
177+ </ div >
178+ </ div >
179+ </ div >
180+
181+
182+
183+ </ nav >
184+
185+ </ header >
186+
187+ < div class ="md-container " data-md-component ="container ">
188+
189+
190+
191+
192+
193+
194+ < main class ="md-main " data-md-component ="main ">
195+ < div class ="md-main__inner md-grid ">
196+
197+
198+
199+ < div class ="md-sidebar md-sidebar--primary " data-md-component ="sidebar " data-md-type ="navigation " >
200+ < div class ="md-sidebar__scrollwrap ">
201+ < div class ="md-sidebar__inner ">
202+
203+
204+
205+
206+ < nav class ="md-nav md-nav--primary " aria-label ="Navigation " data-md-level ="0 ">
207+ < label class ="md-nav__title " for ="__drawer ">
208+ < a href ="/. " title ="Boris Dev " class ="md-nav__button md-logo " aria-label ="Boris Dev " data-md-component ="logo ">
209+
210+
211+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54 "/> </ svg >
212+
213+ </ a >
214+ Boris Dev
215+ </ label >
216+
217+ < ul class ="md-nav__list " data-md-scrollfix >
218+
219+
220+
221+
222+
223+
224+
225+ < li class ="md-nav__item ">
226+ < a href ="/. " class ="md-nav__link ">
227+
228+
229+
230+ < span class ="md-ellipsis ">
231+
232+
233+ Home
234+
235+
236+
237+ </ span >
238+
239+
240+
241+ </ a >
242+ </ li >
243+
244+
245+
246+
247+
248+
249+
250+
251+
252+ < li class ="md-nav__item ">
253+ < a href ="/domain-grammar-compiler/ " class ="md-nav__link ">
254+
255+
256+
257+ < span class ="md-ellipsis ">
258+
259+
260+ Domain IR: A Compiler Architecture for Knowledge Systems
261+
262+
263+
264+ </ span >
265+
266+
267+
268+ </ a >
269+ </ li >
270+
271+
272+
273+ </ ul >
274+ </ nav >
275+ </ div >
276+ </ div >
277+ </ div >
278+
279+
280+
281+ < div class ="md-sidebar md-sidebar--secondary " data-md-component ="sidebar " data-md-type ="toc " >
282+ < div class ="md-sidebar__scrollwrap ">
283+ < div class ="md-sidebar__inner ">
284+
285+
286+ < nav class ="md-nav md-nav--secondary " aria-label ="Table of contents ">
287+
288+
289+
290+
291+ </ nav >
292+ </ div >
293+ </ div >
294+ </ div >
295+
296+
297+
298+ < div class ="md-content " data-md-component ="content ">
299+
300+ < article class ="md-content__inner md-typeset ">
301+
302+ < h1 > 404 - Not found</ h1 >
303+
304+ </ article >
305+ </ div >
306+
307+
308+ < script > var target = document . getElementById ( location . hash . slice ( 1 ) ) ; target && target . name && ( target . checked = target . name . startsWith ( "__tabbed_" ) ) </ script >
309+ </ div >
310+
311+ < button type ="button " class ="md-top md-icon " data-md-component ="top " hidden >
312+
313+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8z "/> </ svg >
314+ Back to top
315+ </ button >
316+
317+ </ main >
318+
319+ < footer class ="md-footer ">
320+
321+ < div class ="md-footer-meta md-typeset ">
322+ < div class ="md-footer-meta__inner md-grid ">
323+ < div class ="md-copyright ">
324+
325+
326+ Made with
327+ < a href ="https://squidfunk.github.io/mkdocs-material/ " target ="_blank " rel ="noopener ">
328+ Material for MkDocs
329+ </ a >
330+
331+ </ div >
332+
333+ </ div >
334+ </ div >
335+ </ footer >
336+
337+ </ div >
338+ < div class ="md-dialog " data-md-component ="dialog ">
339+ < div class ="md-dialog__inner md-typeset "> </ div >
340+ </ div >
341+
342+
343+
344+
345+
346+ < script id ="__config " type ="application/json "> { "annotate" : null , "base" : "/" , "features" : [ "content.code.copy" , "navigation.instant" , "navigation.top" ] , "search" : "/assets/javascripts/workers/search.2c215733.min.js" , "tags" : null , "translations" : { "clipboard.copied" : "Copied to clipboard" , "clipboard.copy" : "Copy to clipboard" , "search.result.more.one" : "1 more on this page" , "search.result.more.other" : "# more on this page" , "search.result.none" : "No matching documents" , "search.result.one" : "1 matching document" , "search.result.other" : "# matching documents" , "search.result.placeholder" : "Type to start searching" , "search.result.term.missing" : "Missing" , "select.version" : "Select version" } , "version" : null } </ script >
347+
348+
349+ < script src ="/assets/javascripts/bundle.79ae519e.min.js "> </ script >
350+
351+
352+ </ body >
353+ </ html >
0 commit comments