Inspector, Browser and Local computation spaces

Luis Quesada luque at info.ucl.ac.be
Wed Sep 5 15:45:40 CEST 2001


Hi,

When answering last Dan's message I got the following questions about the
Browser, the Inspector and their interactions with local computation
spaces:

1 Why is it needed to wait for R.2 in :

local
   S1={Space.new proc {$ R}
                    R='#'(_ _)
                    thread if R.1==a then R.2=b end end
                    {Browse R.1}
                 end
      }
   S2={Space.clone S1}
in
   {Space.inject S2 proc {$ R}
                       R.1=a
                       {Wait R.2} {Browse R.2}
                    end}
end
?

Should not the browser update its information automatically?

2. Why is R.1 restricted to a in S1?

local
   S1={Space.new proc {$ R}
                    R='#'(_ _)
                    thread if R.1==a then R.2=b end end
                    {Wait R.1} {Browse R.1}
                 end
      }
   S2={Space.clone S1}
in
   {Space.inject S2 proc {$ R}
                       R.1=a
                       {Wait R.2} {Browse R.2}
                    end}
end

Are not S1 and S2 two *different* local computation spaces? I think R.1=a,
which is done in S2, should not affect S1.

3. Why does the inspector crash in

local
   S1={Space.new proc {$ R}
                    R='#'(_ _)
                    thread if R.1==a then R.2=b end end
                    {Inspect R.1}
                 end
      }
   S2={Space.clone S1}
in
   {Space.inject S2 proc {$ R}
                       R.1=a
                       {Inspect R.2}
                    end}
end
?

%************************** Error: Space ************************
%**
%** Situatedness violation
%**
%** Culprits: [_<simple>]
%** In statement: {<P/2 Port.send> <Port> inspect(_<simple>)}
%**
%** Call Stack:
%** procedure 'Inspect' in file "/.amd_mnt/krumelur/host/e2/dsl/kost/compile/build-1.2.0/mozart/share/tools/inspector/InspectorMain.", line 553, column 6, PC = 6387592
%**--------------------------------------------------------------

Luis

--
Catholic University of Louvain
Department of Computing Science and Engineering
Place Sainte Barbe, 2
B-1348 Louvain-la-Neuve, Belgium
Phone: (++32) (10) 47 90 13
Fax: (++32) (10) 45 03 45
E-mail: luque at info.ucl.ac.be



-
Please send submissions to hackers at mozart-oz.org
and administriva mail to hackers-request at mozart-oz.org.
The Mozart Oz web site is at http://www.mozart-oz.org/.





More information about the mozart-hackers mailing list