summaryrefslogtreecommitdiffhomepage
path: root/src/www/index.gsp
blob: e543bb43f87487ab44399abb4b7941b1bb030633 (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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
html lang="en" {
	head { HEAD }
	body {
		header {
			div .head {
				h1 {-Other Websites}
				INCLUDE(nav.gsp)
			}

			figure .quote {
				blockquote {
					p {=
						The essence of XML is this: the problem it solves it not hard, and
						it does not solve the problem well.
					}
				}
				figcaption {-Phil Wadler}
			}
		}

		main {
			p {=
				On this section of the website you can find links to all sorts of other
				websites I think are somewhat interesting.  Some of these are my own
				sites, and some of them aren’t.  Feel free to explore.
			}

			h3 {-My Websites}
			ul {
				li {
					NEWTAB href="https://archive.thomasvoss.com" {=
						@cite{-archive} — Mario Kart Wii time trials archive
					}
				}
				li {
					NEWTAB href="https://cv.thomasvoss.com" {=
						@cite{-cv} — my résumé/curriculum vitæ
					}
				}
				li {
					NEWTAB href="https://euro.thomasvoss.com" {=
						@cite{-euro} — my euro coin and -banknote collection
					}
				}
				li {
					NEWTAB href="https://git.thomasvoss.com" {=
						@cite{-git} — my git server
					}
				}
				li {
					NEWTAB href="https://paste.thomasvoss.com" {=
						@cite{-paste} — my paste server
					}
				}
				li {
					NEWTAB href="https://retime.mcbe.wtf" {=
						@cite{-retime} — a webtool for retiming speedruns
					}
				}
			}

			h3 {-Not My Websites}
			ul {
				li {
					NEWTAB href="https://cat-v.org" {=
						@cite{-Cat -v} — @q{-The Internet is not for sissies.}
					}
				}
				li {
					NEWTAB href="https://classicshorts.com" {=
						@cite{-Classic Shorts} — a collection of short stories
					}
				}
				li {
					NEWTAB href="https://emacsredux.com" {=
						@cite{-Emacs Redux} — blog posts on Emacs
					}
				}
				li {
					NEWTAB href="https://iannis.io" {=
						@cite{-iannis.io} — blog posts on programming topics
					}
				}
				li {
					NEWTAB href="https://nullprogram.com" {=
						@cite{-Null Program} — blog posts on software development; mainly C
					}
				}
				li {
					NEWTAB href="https://redblobgames.com" {=
						@cite{-Red Blob Games} — algorithms in the context of video games
					}
				}
				li {
					NEWTAB href="http://textfiles.com" {=
						@cite{-Text Files} — a collection of thousands of plain-text files
					}
				}
			}

			h3 {-Assorted Links}
			ul {
				li {
					NEWTAB href="https://web.archive.org/web/20230619115633/http://lists.warhead.org.uk/pipermail/iwe/2005-July/000130.html" {
						cite {-Why Lisp Macros are Cool}
					}
				}
				li {
					NEWTAB href="https://melsloop.com/docs/the-story-of-mel/pages/mel-kaye-cv" {
						cite {-The Story of Mel}
					}
				}
			}

			p {-Alternative approaches to common problems:}
			ul {
				li {
					NEWTAB href="https://doc.cat-v.org/plan_9/4th_edition/papers/rc" {
						cite {-Rc — The Plan 9 Shell}
					}
				}
				li {
					NEWTAB href="https://doc.cat-v.org/inferno/4th_edition/inferno_shell" {
						cite {-Sh — The Inferno Shell}
					}
				}
				li {
					NEWTAB href="https://doc.cat-v.org/bell_labs/structural_regexps/se.pdf" {
						cite {-Structural Regular Expressions — Rob Pike}
					}
				}
			}

			p {-Interesting talks (these are videos):}
			ul {
				li {
					NEWTAB href="https://www.youtube.com/watch?v=HxaD_trXwRE" {
						cite {-Lexical Scanning in Go — Rob Pike}
					}
				}
			}
		}

		footer { FOOT }
	}
}