at:tutorial:symbiosis
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
at:tutorial:symbiosis [2007/07/05 09:47] – jdedecker | at:tutorial:symbiosis [2007/07/27 07:09] – jdedecker | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | < | ||
====== Symbiosis with Java ====== | ====== Symbiosis with Java ====== | ||
Line 81: | Line 80: | ||
def showSymbiosis() { | def showSymbiosis() { | ||
- | def javaDemo := SymbiosisDemo.new(); | + | |
- | def atObject := object: { | + | |
- | def ping() { | + | def ping() { |
- | system.println(" | + | system.println(" |
- | javaDemo.run2(self); | + | javaDemo.run2(self); |
- | }; | + | }; |
- | def pong() { | + | def pong() { |
- | system.println(" | + | system.println(" |
- | 42 | + | 42 |
- | } | + | } |
- | }; | + | }; |
- | javaDemo.run(atObject); | + | |
}; | }; | ||
Line 123: | Line 122: | ||
If Java invokes a method declared in an interface with an overloaded method signature, all overloaded invocations are transformed into the same method invocation on the AmbientTalk object. In other words, the AmbientTalk object does not take the types into consideration. However, if the Java method is overloaded based on arity, the AmbientTalk programmer can take this into account in the parameter list of the corresponding AmbientTalk method, by means of a variable-argument list or optional parameters. Otherwise, the Java invocation may fail because of an arity mismatch. | If Java invokes a method declared in an interface with an overloaded method signature, all overloaded invocations are transformed into the same method invocation on the AmbientTalk object. In other words, the AmbientTalk object does not take the types into consideration. However, if the Java method is overloaded based on arity, the AmbientTalk programmer can take this into account in the parameter list of the corresponding AmbientTalk method, by means of a variable-argument list or optional parameters. Otherwise, the Java invocation may fail because of an arity mismatch. | ||
+ | |||
+ | < | ||
+ | >def test := / | ||
+ | >>< | ||
+ | > | ||
+ | ping! | ||
+ | pong! | ||
+ | >>42 | ||
+ | </ |
at/tutorial/symbiosis.txt · Last modified: 2013/05/17 20:25 by tvcutsem