[Prev][Next][Index][Thread]
Re: a table of c funtion pointers
In article <397C8F6E.70AD3352@infoware.com>,
Futeh Kao <fkao@infoware.com> wrote:
> Because of some other issues, I ended up having to resort to write
some C
> glue
> code. The C glue code is fairly small and entirely platform
independent (no
> Win32 specific calls). In any case, I've successfully started a Java
VM and
> called some methods. I do have one additional problem: there is a
<C-long>
> class, however, it is the same size as <machine-word>, whereas Java
long is
> 64 bit. Hmm ... any clean solutions besides resorting to my C glue
code
> again?
If you are still having problems, you should give more information about
what specifically you are trying to accomplish.
>
> Another question I have, because of my limited few days of experience
with
> Dylan,
> is that how does it support delegation and dynamic compiling. In
Smalltalk
> or
> Objective-C, when a method is not understood by an object, the object
is
> given the chance to handle it by implementing the doesNotUnderstand:
method.
I don't know Smalltalk well enough to provide much useful information,
but in Dylan you can always supply a method that is applicable to any
type of object.
define method foo (object)
// do something here that is applicable to any object
end method;
>Second,
in
> Java, I can generate source code at runtime, then invoke an external
process
> to compile the code and finally load the resulting class file using a
> ClassLoader,
> all during while the application is running. In Smalltalk, one can
use the
> Compiler class to compile source code at runtime and have the new
behavior
> while the application is running. How does Dylan accomplishes this
given
> that
> everything is compiled to an exe and that I am not aware of a platform
> independent
> bytecode representation?
>
Are you asking whether Dylan has this feature or are you asking how it
is implemented? With Functional Developer, you can modify and interact
with your program at runtime. Changes are downloaded to the running
application. You can think of the application as being "tethered".
Please see the Functional Developer documentation for more details
(especially relevant is the first secton "Getting Started with
Functional Developer").
Hope this helps.
Sent via Deja.com http://www.deja.com/
Before you buy.
References: