Jump to content
Excelsior Forums


  • Content count

  • Joined

  • Last visited


Posts posted by Vit

  1. I've run your program under Linux and it displays meaningful results (y=2005, m=7, d=6, etc..) So you should better trace where your problems start...

    > SysClock.CanGetClock() says I can get the Time and Date and assign them.

    It actually always returns TRUE  ;)

    > However, SysClock.IsValidDateTime says that my DateTime record is invalid after using SysClock.GetClock

    Please look at the contents of SysClock.DateTime record that GetClock returns at each phase. Are all fields all right?

    IsValidDateTime actually performs the following check of its parameter d:

     IF (d.day<1) OR (d.day>31) THEN RETURN FALSE END;

     IF (d.month<1) OR (d.month>12) THEN RETURN FALSE END;

     IF (d.year<1) THEN RETURN FALSE END;

     IF (ORD(d.month) IN m30days) & (d.day>30) THEN RETURN FALSE END;

     IF (d.month=2) & (d.day>28+ORD(is_leap(d.year))) THEN RETURN FALSE END;

     IF (d.hour>23) OR (d.minute>59) OR (d.second>59) THEN RETURN FALSE END;


    where is_leap(y) =  RETURN (y MOD 4=0) & (y MOD 100#0) OR (y MOD 400=0);

    and   CONST m30days = {4,6,9,11};

  2. > That may add a new value and attract some other people to use XDS in their developments.  

    That's worth believing, but seems dobtful. Do we speak of units and dozens or about hundreds ands thousands of people? What is that part of the community that we hope to attract on our side? Modula-2 adherents that are using XDS already or still do not wish to use it? Or someone from C++/C#/Java world? :)

    > What do you think is any probability that XDS will go GPL in near future?

    It is more than possible, it is planned yet for this year. No promises and obligations so far, however.

  3. What you guys can surely do for free and right now is leaving your proposals here! :D (Indications if these are bugs (and according to what reasons) or just wishes are welcome, as well as discussions).

    In some time we'll look through the list and make our estimations what can be done and with what efforts.

    Then we can discuss the budget and if the sponsorship will be sufficient - well, why not?  :rolleyes:

  4. Unnatural and violating the incapsulation principle is that in an derived type we need to know all the private fields of the whole hierarchy ofl base types. From one hand, we cannot access these fields. From another hand, we cannot reuse their names. Thus if we wish to override cordinates names x and y in a base type, we need to introduce x1 and y1 in a derived type.

    The reason of "making exported" a formerly private field does not sound convincing: any change in an interface of a base type causes necessity to revise all derived types! What if I wish just to add a NEW field in a base type that is already used in some of its derivatives?? This is the problem of versioning better approached in COM...

  5. Yes, the exit code is defined as CARDINAL (that is, CARD32).

    I see no way to return a string value from an executed program or command line.

    If you need to intercept a program's output, you better redirect its output to some stream handled by your host program. Or you can pass string data via environment variables.

    If these does not solve the problem then please give more information on your particular problem.