git @ Cat's Eye Technologies Larabee / f35d031
Import version 1.0 revision 2011.1214 sources (just HTML fixes.) Cat's Eye Technologies 10 years ago
1 changed file(s) with 15 addition(s) and 10 deletion(s). Raw diff Collapse all Expand all
00 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
1 <!-- encoding: UTF-8 -->
12 <html xmlns="http://www.w3.org/1999/xhtml" lang="en">
23 <head>
34 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
45 <title>The Larabee Programming Language</title>
6 <!-- begin html doc dynamic markup -->
7 <script type="text/javascript" src="/contrib/jquery-1.6.4.min.js"></script>
8 <script type="text/javascript" src="/scripts/documentation.js"></script>
9 <!-- end html doc dynamic markup -->
510 </head>
611 <body>
712
7176 <p>On the other hand, if the BPR is less than 0:</p>
7277
7378 <ul>
74 <li>If <var>cond-expr</var> evaluated to true, evaluate <var>expr2</var> and increment the BPR.
75 <li>If <var>cond-expr</var> evaluated to false, evaluate <var>expr1</var> and decrement the BPR.
79 <li>If <var>cond-expr</var> evaluated to true, evaluate <var>expr2</var> and increment the BPR.</li>
80 <li>If <var>cond-expr</var> evaluated to false, evaluate <var>expr1</var> and decrement the BPR.</li>
7681 </ul>
7782
7883 <p><code>test</code> is the lynchpin upon which Larabee's entire
141146
142147 <p>For example, input invariance is the underlying idea used in converting the
143148 usual proof of the uniform halting problem into a (less obvious) proof
144 of the standard halting problem &mdash; you say, for any given input, that
149 of the standard halting problem — you say, for any given input, that
145150 we can find a machine that erases whatever input it was given, writes the
146151 desired input on its tape, and proceeds to perform a computation that we can't
147152 decide will halt or not.</p>
154159 <p>But Larabee can't do either of these things. There is no Larabee
155160 program that can replace its arbitrary input with some fixed, constant choice of
156161 input. And while you can write a quine, it will require a certain input to
157 produce itself &mdash; there will always be other inputs which make it
162 produce itself — there will always be other inputs which make it
158163 produce something different.</p>
159164
160165 <p>"So what!" you say, being of bold philosophical bent, "it's mere mereology.
255260 (goto loop) (nop))))
256261 (print (fetch (input))))</pre>
257262
258 <p>And, oh, actually, we don't have <code>begin</code> &mdash;
263 <p>And, oh, actually, we don't have <code>begin</code> —
259264 nor <code>nop</code>, neither. Hooray!</p>
260265
261266 <pre>(store (input) (input)
268273
269274 <p>Now, if you've been following that, and if you can imagine in the
270275 slightest how the input will need to look for any given integer, to
271 produce the correct factorial result on the output &mdash; even <em>assuming</em>
276 produce the correct factorial result on the output — even <em>assuming</em>
272277 you added a bunch of <code>test</code>s somewhere in the program and
273278 fed them all the right numbers so that the important <code>test</code> turned
274 out the way you wanted &mdash;
279 out the way you wanted —
275280 then I needn't go to the extra trouble of a rigourous
276281 proof to convince you that Larabee is not Turing-complete.</p>
277282
283288 late, and I'm tired. Maybe later.</p>
284289
285290 <p><i>(later)</i> OK, it goes something like this. Ackermann's
286 function &mdash; which we know we need at least something that can do
287 better than primitive-recursive, to compute &mdash; has a lower-bound
291 function — which we know we need at least something that can do
292 better than primitive-recursive, to compute — has a lower-bound
288293 complexity on the order of, well, Ackermann's function.
289294 (This in itself seems to be one of those mathematical oddities that seems
290295 wiggy when you first hear about it, then self-evident after you've thought
308313 begrudge it seeking comfort in the arms of an understanding
309314 mistress, a bottle of bourbon, the Cone of Silence? But even so, saving
310315 such wretched constructions from their own self-annihilation, so we may all
311 learn from its example &mdash; this is one of the very reasons
316 learn from its example — this is one of the very reasons
312317 we run this Home for Wayward Calculi, is it not?</p>
313318
314319 <p>Indeed.</p>