Libraryless. Click here for Pure Java version (3425L/23K/77K).
1 | !752 |
2 | |
3 | sS suckerID = "#1004654", algoID = "#1004663"; |
4 | |
5 | sclass Desc {
|
6 | S progID, params; |
7 | } |
8 | |
9 | p {
|
10 | load("algoID");
|
11 | if (args.length != 0) algoID = args[0]; |
12 | if (args.length > 1) suckerID = args[1]; |
13 | |
14 | if (isAWT()) {
|
15 | final JTextField tf = new JTextField(algoID); |
16 | showForm("Algorithm to feed (ID):", tf, r {
|
17 | algoID = trim(tf.getText()); |
18 | save("algoID");
|
19 | thread { wakeSucker(suckerID, algoID); }
|
20 | }); |
21 | } else |
22 | wakeSucker(suckerID, algoID); |
23 | } |
24 | |
25 | static void wakeSucker(S suckerID, S algoID) {
|
26 | ping(); |
27 | algoID = fsI(algoID); |
28 | |
29 | print("Waking...");
|
30 | O sucker = run(suckerID); |
31 | print("Loading...");
|
32 | final O algo = hotwire(algoID); |
33 | print("Feeding...");
|
34 | |
35 | Class intrface = getClass(sucker, "main$Algorithm"); |
36 | assertNotNull("main$Algorithm", intrface);
|
37 | O proxy = java.lang.reflect.Proxy.newProxyInstance(intrface.getClassLoader(), |
38 | new Class[] { intrface },
|
39 | new InvocationHandler {
|
40 | public O invoke(O proxy, Method method, O[] args) {
|
41 | assertEquals(method.getName(), "recognizeWord"); |
42 | ret call(algo, method.getName(), |
43 | quickExport(args[0], algo), |
44 | quickExport(args[1], algo)); |
45 | } |
46 | }); |
47 | |
48 | bool rep = hasMethodNamed(algo, "prepareNext"); |
49 | int count = 1; |
50 | while (licensed() && |
51 | (rep ? isTrue(call(algo, "prepareNext")) : (count-- > 0))) {
|
52 | S desc = algoID; |
53 | S params = cast callOpt(algo, "getParams"); |
54 | if (nempty(params)) desc += " " + params; |
55 | O result = callOpt(sucker, "suck", desc, proxy); |
56 | print("Suck Result: " + struct(result));
|
57 | } |
58 | |
59 | cleanUp(algo); |
60 | cleanUp(sucker); |
61 | } |
download show line numbers debug dex old transpilations
Travelled to 14 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, ddnzoavkxhuk, gwrvuhgaqvyk, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt
No comments. add comment
| Snippet ID: | #1004664 |
| Snippet name: | Test Waking The Sucker (WORKS) |
| Eternal ID of this version: | #1004664/1 |
| Text MD5: | d8a0434e06f0d632ecc089fb957399cc |
| Transpilation MD5: | edffe36a641bbe3a31c6000d3473174e |
| Author: | stefan |
| Category: | javax / a.i. |
| Type: | JavaX source code |
| Public (visible to everyone): | Yes |
| Archived (hidden from active list): | No |
| Created/modified: | 2016-08-25 19:37:04 |
| Source code size: | 1666 bytes / 61 lines |
| Pitched / IR pitched: | No / No |
| Views / Downloads: | 748 / 1026 |
| Referenced in: | [show references] |