author | Tony Garnock-Jones <tonygarnockjones@gmail.com> |
Wed, 16 Jan 2019 17:15:58 +0000 | |
changeset 438 | 1fe179d53161 |
parent 284 | 1bf8431909d4 |
permissions | -rw-r--r-- |
284
1bf8431909d4
Answer some value rather than void
Tony Garnock-Jones <tonygarnockjones@gmail.com>
parents:
276
diff
changeset
|
1 |
define A = { .a -> do write("A"); .theAnswer; _ -> .other }; |
276
eab6eb1aaa5c
Old delegation example.
Tony Garnock-Jones <tonyg@kcbbs.gen.nz>
parents:
diff
changeset
|
2 |
|
eab6eb1aaa5c
Old delegation example.
Tony Garnock-Jones <tonyg@kcbbs.gen.nz>
parents:
diff
changeset
|
3 |
-- define B = rec { .a -> do write("IN"); do self.b; write("OUT") } |extends ({.b -> A.a} |extends A); |
eab6eb1aaa5c
Old delegation example.
Tony Garnock-Jones <tonyg@kcbbs.gen.nz>
parents:
diff
changeset
|
4 |
define B = rec { .a -> self.b; .b -> A.a } |extends A; |
eab6eb1aaa5c
Old delegation example.
Tony Garnock-Jones <tonyg@kcbbs.gen.nz>
parents:
diff
changeset
|
5 |
|
eab6eb1aaa5c
Old delegation example.
Tony Garnock-Jones <tonyg@kcbbs.gen.nz>
parents:
diff
changeset
|
6 |
define debugTrace x -> rec { |
eab6eb1aaa5c
Old delegation example.
Tony Garnock-Jones <tonyg@kcbbs.gen.nz>
parents:
diff
changeset
|
7 |
selector -> do write(selector); |
eab6eb1aaa5c
Old delegation example.
Tony Garnock-Jones <tonyg@kcbbs.gen.nz>
parents:
diff
changeset
|
8 |
do write("IN"); |
eab6eb1aaa5c
Old delegation example.
Tony Garnock-Jones <tonyg@kcbbs.gen.nz>
parents:
diff
changeset
|
9 |
let result = self |as x selector; |
eab6eb1aaa5c
Old delegation example.
Tony Garnock-Jones <tonyg@kcbbs.gen.nz>
parents:
diff
changeset
|
10 |
do write(selector); |
eab6eb1aaa5c
Old delegation example.
Tony Garnock-Jones <tonyg@kcbbs.gen.nz>
parents:
diff
changeset
|
11 |
do write("OUT"); |
eab6eb1aaa5c
Old delegation example.
Tony Garnock-Jones <tonyg@kcbbs.gen.nz>
parents:
diff
changeset
|
12 |
result |
eab6eb1aaa5c
Old delegation example.
Tony Garnock-Jones <tonyg@kcbbs.gen.nz>
parents:
diff
changeset
|
13 |
}; |
eab6eb1aaa5c
Old delegation example.
Tony Garnock-Jones <tonyg@kcbbs.gen.nz>
parents:
diff
changeset
|
14 |