Re: bpl12 Suggestions

From: Jorgen Sigvardsson (di5sig@CSE.HKS.SE)
Date: 08/19/97


Franco Gasperino wrote:

>   I think the point trying to be made is that currently, to port from
> one
> OS to another only requires minor changes. A few typedefs, ifndefs,
> and other
> small differences (WSADATA for windows sockets, ect).

#define's are evil. Read 'The Design and Evolution of C++' by Bjarne
Stroustrup to find outmore about the evil little preprocessor
directives..

> Multithreading is a different story.

No it isn't. Not if It's done in C++ or any other object oriented
language. Things like threadscan fairly easy be implemented using a
design pattern called 'Factory Method'. Read
'Design patterns - Elements of Reusable Object-Oriented Software' by
Erich Gamma et al.

>   _Maybe_ windows NT could handle POSIX threads, but im not certain.
> 95 and Mac couldnt, although they could handle threads with their own
> libraries and calls.

If Win95 and Mac's threadhandling doesn't differ too much from
POSIX-style threads, thereisn't any real problem, just a lot of typing.

> But this, plus critical sections and other like topics,
> would be a vastly bigger project than what the porting currently is

True. Circle is _full_ of critical regions.. (buf for instance ;) I
don't think Circle 3.x will be
easily 'ported' to be using threads. A whole rewrite of the current code

is needed. Well
some of the monolithic code doesn't need much tweaking, but thats just
10% of the total
code.

My 2 cents..

// Jorgen


     +------------------------------------------------------------+
     | Ensure that you have read the CircleMUD Mailing List FAQ:  |
     | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html |
     +------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/08/00 PST