summary refs log tree commit diff stats
path: root/unicorn.html
blob: ba0d11c8f0524e5038f45e11edcde91c90f6c505 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8" />
	<title>Unicorn</title>
	<link rel="stylesheet" href="./style.css" />
	<link rel="icon" href="./favicon.ico" sizes="any" />
	<!--link rel="icon" href="./icon.svg" type="image/svg+xml" / -->
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
	<meta name="theme-color" content="#241504" />
	<meta name="color-scheme" content="light dark">

</head>
<body>
<header>
	<h1>Unicorn</h1>
</header>

<article>
		
		<p>
		有时候,玻璃独角兽会碎<br />
		但是祂的本质还在
		</p>
			
		<p>
		那只角撞碎在地上,<br />
		破碎支离,折射着烛光——<br />
		在血肉模糊的身体上<br />
		闪耀着无畏的寂静<br />
		分崩离析,那沉醉中的时间
		</p>
			
		<p>
		一口气吹过——。<br />
		蜡烛灭了,而碎渣仍闪耀着<br />
		空气虚掩着烟雾和废墟<br />
		唤醒那种沉溺,<br />
		又浇上些许棉花
		</p>
			
		<p>
		有时候,玻璃独角兽会碎;<br />
		但是祂的本质还在。
		</p>

<p>Perhaps sometimes the glass unicorn shatters;<br />
Yet, its essence remain unscathed.</p>

<p>Its horn crashes to the ground,<br />
Sparkles and shatters, lucidly refracting candlelight&mdash;<br />
Glistening in silence, fearless<br />
Upon a blurred yet blank canvas of flesh,<br />
Fragmented in disarray, time loses itself in these poignant reflections.</p>

<p>A breath wizzes by&mdash;.<br />
The candle extinguishes, yet shattered remnants still glimmer,<br />
The air veils a blend of smoke and ruins,<br />
Reviving that is submerged,<br />
Quietly veiled with a cascade of cotton.</p>

<p>Perhaps sometimes, the glass unicorn shatters;<br />
Yet, its essence remain unscathed.</p>

<hr />

<p>
I lay upon the snow, staring into my own hands.<br />
Candlelight refract onto my retina, remains of molten glass persist.<br />
那只角撞碎在地上。破碎支离,折射着烛光——<br />
在血肉模糊的身体上闪耀着无畏的寂静,又忽然分崩离析。<br />
Wild, dramatic juxtapositions. Between the realistic, and the magical.<br />
Sentiment—the fear thereof; Love—the unreasonable expectation thereof;<br />
Driven towards what cannot be, still I live, not prosper, just live.
</p>

<p>
Just, a capricious yearning...
</p>

<p>
Among the ripples of time, nuances flicker and fade,<br />
Each granule, a testament to relentless, inevitable decay.<br />
Horizons beckon, as life's tapestry we read.
</p>

<p>
<i>An enigma.</i>
</p>
</article>

<footer>
	<ul role="list">
		<li><a href="./">Home</a></li>
		<li>Runxi Yu</li>
		<li><a rel="license" href="./pubdom.html">Public Domain</a></li>
	</ul>
</footer>
</body>
</html>
>status:address:array:character <- new [errors found] update-status screen, status, 1/red } ] container sandbox-data [ warnings:address:array:character ] recipe! update-sandbox sandbox:address:sandbox-data, env:address:programming-environment-data -> sandbox:address:sandbox-data [ local-scope load-ingredients data:address:array:character <- get *sandbox, data:offset response:address:address:array:character <- get-address *sandbox, response:offset warnings:address:address:array:character <- get-address *sandbox, warnings:offset trace:address:address:array:character <- get-address *sandbox, trace:offset fake-screen:address:address:screen <- get-address *sandbox, screen:offset recipe-warnings:address:array:character <- get *env, recipe-warnings:offset { break-unless recipe-warnings *warnings <- copy recipe-warnings reply } *response, *warnings, *fake-screen, *trace, completed?:boolean <- run-interactive data { break-if *warnings break-if completed?:boolean *warnings <- new [took too long! ] } ] # make sure we render any trace after <render-sandbox-trace-done> [ { sandbox-warnings:address:array:character <- get *sandbox, warnings:offset break-unless sandbox-warnings *response-starting-row <- copy 0 # no response { break-unless env recipe-warnings:address:array:character <- get *env, recipe-warnings:offset row, screen <- render screen, recipe-warnings, left, right, 1/red, row } row, screen <- render screen, sandbox-warnings, left, right, 1/red, row # don't try to print anything more for this sandbox jump +render-sandbox-end:label } ] scenario run-instruction-and-print-warnings [ trace-until 100/app # trace too long assume-screen 50/width, 15/height 1:address:array:character <- new [get 1:address:point, 1:offset] 2:address:programming-environment-data <- new-programming-environment screen:address:screen, 1:address:array:character assume-console [ press F4 ] run [ event-loop screen:address:screen, console:address:console, 2:address:programming-environment-data ] screen-should-contain [ . run (F4) . . . .━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━. . x. .get 1:address:point, 1:offset . .first ingredient of 'get' should be a container, . .but got 1:address:point . .━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━. . . ] screen-should-contain-in-color 1/red, [ . . . . . . . . . . .first ingredient of 'get' should be a container, . .but got 1:address:point . . . . . ] ] # todo: print warnings in file even if you can't run a sandbox scenario run-instruction-and-print-warnings-only-once [ trace-until 100/app # trace too long assume-screen 50/width, 10/height # editor contains an illegal instruction 1:address:array:character <- new [get 1234:number, foo:offset] 2:address:programming-environment-data <- new-programming-environment screen:address:screen, 1:address:array:character # run the code in the editors multiple times assume-console [ press F4 press F4 ] run [ event-loop screen:address:screen, console:address:console, 2:address:programming-environment-data ] # check that screen prints error message just once screen-should-contain [ . run (F4) . . . .━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━. . x. .get 1234:number, foo:offset . .unknown element foo in container number . .first ingredient of 'get' should be a container, . .but got 1234:number . .━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━. . . ] ] scenario sandbox-can-handle-infinite-loop [ trace-until 100/app # trace too long assume-screen 50/width, 20/height # editor contains an infinite loop 1:address:array:character <- new [{ loop }] 2:address:programming-environment-data <- new-programming-environment screen:address:screen, 1:address:array:character # run the sandbox assume-console [ press F4 ] run [ event-loop screen:address:screen, console:address:console, 2:address:programming-environment-data ] screen-should-contain [ . run (F4) . . . .━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━. . x. .{ . .loop . .} . .took too long! . .━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━. . . ] ] # todo: scenario sandbox-with-warnings-shows-trace from edit/