[eclipse-clp-users] Differences in behaviour between 5.1 and 6.0

From: luke2k4_at_...6... <luke2k4_at_...6...>
Date: Fri, 26 Dec 2008 00:24:01 +0100
Hey there,
I've just subscribed to this list so I wanted to say hi to everyone.
I wanted to ask about the new 6.0 compiler and the TkEclipse  that comes
with it.
Today I've been testing one of my eclipse projects with the new tools and,
and unfortunately it does not run on 6.0 as it did on 5.1 , here are the
reasons:

1. There is some issue with the conditionals, In my code I used conditionals
of the form:
        (DurDomVal=DurMin..DurMax->
            true
        ;
            DurDomVal = DurMin,
            DurDomVal = DurMax
        ),
this worked fine with the 5.10 but now it doesn't because DurMin and DurMax
are singletons for the new compiler. This means that the condition in the
first line is not global in scope. There is an obvious workaround :

        (DurDomVal=_DurMin.._DurMax->
            true
        ;
            DurDomVal=DurMin..DurMax,
            DurDomVal = DurMin,
            DurDomVal = DurMax
        ),

but it is less compact and not logical for me. This is a small thing but
maybe someone can justify why it works in this new way.

2. As far as I have noticed the "Observe this term" and "Observe this goal"
functionality does not work. It's probably because  the Display Matrix is
not working, the predicate "make_display_matrix(AA,aa)" returns true but
nothing happens. It has not been implemented yet in this version of tools?
Or is this an isolated problem only in my environment ?

3.I had some problems with constructing arrays of lists.
The code below for the 5.1 compiler resulted in creating a term containing
an open list in Term2 and Term1 was a term containing the list's tail. With
6.0 something strange happens, both Term1 and Term2 contain the NewTail
variable

    functor(Term1,functor1,1),
    functor(Term2,functor2,1),
    (foreacharg(Term1Var,Term1,Idx),
     param(Term2) do
        setarg(Idx,Term2,Term1Var)
    ),

        arg(1,Term1,Tail),
        Tail = [smething,NewTail],
        setarg(1,Term1,NewTail)

I would be grateful if someone could comment on the 3 points, are they bugs
?
I'm using  the tools in version 6.0 #58 i386_nt

Best Regards
Łukasz Domagała
Received on Thu Dec 25 2008 - 23:24:07 CET

This archive was generated by hypermail 2.3.0 : Thu Feb 22 2024 - 18:13:20 CET