[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: answer to cert question
- From: "Customer Support" <support@...>
- Date: Fri, 24 Jun 2005 07:25:52 -0400
On Wed, 22 Jun 2005 - Rici Lake wrote:
"So, if you could provide me with a sample of your Lua code, I might have a
bit more confidence in your certification program."
I'm sorry that I can't fulfill this request directly. The Lua code that is
sufficiently complex so that it would be of interest to you is also a trade
secret for us. (Since it is used in our business operations.) As a
somewhat lesser substitute, here is a question from one of our practice
exams:
Given the following code:
1 x = 0
2
3 prod = coroutine.create(
4 function()
5 while true do
6 put(x)
7 x = x + 2
8 end
9 end)
10
11 cons = coroutine.create(
12 function(p)
13 while true do
14 get(p)
15 end
16 end)
17
18 function put(x)
19 coroutine.yield(x)
20 end
21
22 function get(p)
23 local status, value = coroutine.resume(p)
24 return value
25 end
26
27 coroutine.resume(prod)
28 coroutine.resume(cons, prod)
29 print(coroutine.status())
What is the output?
a) dead
b) running
c) suspended
d) There is no output. (on the test, this is a different font so that you
can see it is an answer, not a quote of output)
e) An error occurs. (ditto)
I'd give the answer, but programmers tend to love puzzling these things out
for themselves. :) Can you figure it out without running it?
Sincerely,
R. Grant Reed
High-Level Certifications