A couple of questions

Denys Duchier Denys.Duchier at ps.uni-sb.de
Mon Jan 28 17:48:45 CET 2002


gabor.szokoli at vanderbilt.edu (Gabor Szokoli) writes:

> 1, Is there any material on this, like "internals of oztool" or "the
> Mozart architecture"?

of course: we like to call it "the source" :-)

> 2, don't you mean the _FUNDECL and _FUNTYPEDECL macros?

Yep, these are macro wrappers for using __declspec

> 3, does it matter that said symbols are not present in emulator.def?
> Or is that how they'll get there?

you got it in one: that's how they get there!

> 4, Have these symbols ever been available like that? If not, how could
> this ever be linked??

err... which symbols?

> 5, The first missing symbol is oz_addSuspendVarList (unsigned int *).

we have sort of a convention, that we even occasionally abide by, that
oz_... symbols are internal (often defined as macros or inline
functions) and OZ_... symbols are meant for export.

> It is used as OZ_Term *. It is declared in am.hh as TaggedRef or
> TaggedRef*.

An OZ_Term is a TaggedRef.

> I tried lots of combinatoins, but none works. Could you give me an
> example, what to put in mozart.h to have this symbol properly
> exported? I wasted the whole weekend experimenting... :-/

Propably something like:

_FUNDECL(OZ_Return,oz_addSuspendVarList,(OZ_Term*));

but really a OZ_addSuspendVarList should be defined and exported
instead.  See for example OZ_suspendOnInternal.

> And one more thing: oztool claims it can handle msvc. Can msvc
> handle all the fancy stuff in the mozart source like goto-label
> aritmetics or tail recursion detection?

The Mozart emulator uses first-class labels when they are available
(i.e. GCC), but reverts to more conventional switch statement
otherwise.  I have no idea what MSVC supports; maybe Leif can
enlighten us.

Cheers,

-- 
Dr. Denys Duchier			Denys.Duchier at ps.uni-sb.de
Forschungsbereich Programmiersysteme	(Programming Systems Lab)
Universitaet des Saarlandes, Geb. 45	http://www.ps.uni-sb.de/~duchier
Postfach 15 11 50			Phone: +49 681 302 5618
66041 Saarbruecken, Germany		Fax:   +49 681 302 5615
-
Please send submissions to users at mozart-oz.org
and administriva mail to users-request at mozart-oz.org.
The Mozart Oz web site is at http://www.mozart-oz.org/.





More information about the mozart-users mailing list