r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[Tech News] Interesting technology

Gabriele
18-May-2006
[911x3]
you cannot address the block; you can only get the blocks matching 
a pattern, and publish other blocks.
having a defined set of operations, you end up with a system that 
does not have the usual problems of parallel processing.
i don't think there's any need to have this natively, the native 
code just needs to ensure that you cannot screw things up by mistake 
:)
Volker
18-May-2006
[914x2]
Maybe determinism means here: Some things must happen in order, for 
example writing to a log? So that different runs produce the same 
result?
Which this server-thing should do.
Gabriele
18-May-2006
[916]
if you want to log events a and b, and they can happen with watever 
order, you want to log them in whatever order. if they can only happen 
in a given order, there is no parallelism.
Volker
18-May-2006
[917x2]
Just thinking loud about tuple-space: Could xpath and threads go 
hand in hand?
But a parralel processed image looks the same all the time, or the 
processing of a big matrix. Still deterministic. Whatever happens 
inside the box.
Pekr
18-May-2006
[919]
Sun blesses Java phone - http://www.deviceforge.com/news/NS6109398413.html
.... java penetration is the reason why I asked if rebol-4-Java would 
make sense :-)
JaimeVargas
18-May-2006
[920x3]
Anton, Yes I read the last line and I agree with it. The question 
is what should Rebol do to takle the concept of concurrency and do 
it properly, like Erlang, Termite, or Mozart/Oz.
Volker, I was ilustrating that just using the function TASK is not 
enough. You need a way to prune non-determinism. The example I posted 
ilustrate the problem. Your example has the same problem than mine, 
because TASK it doesn't introduce an order of execution. The fact 
that your example is coded sequentially doesn't mean that the computation 
will be carried in that order and produce the same result always. 
Your example only introduces notatation to pass messages between 
tasks.
Gabriele, using threading only computation  with no overlaps is limiting 
concurrency to one problem space. If that is the case then why add 
TASKs to Rebol, when we have already processes.  The only advantage 
will be memory use, and context switching time, but not extra gains.
Volker
18-May-2006
[923]
Your example looked like locking to me, i saw two threads accessing 
a shared resource. Semms i missed the point.
Gabriele
18-May-2006
[924x2]
processes are heavyweight and we don't have fast ipc across rebol 
processes.
imho the only reason for task! is because it is lightweight and because 
communication is very fast.
Volker
18-May-2006
[926x4]
Complete determinism makes no sense with parallel IMHO, if you dont 
allow for some random things, you basically can drop the whole parallel 
thing.
Reminds me to VLIW, which made great promises. Then it turned out 
to be very tricky to precalculate the actions of ~10 ALUs.
So i think a coordination language needs more features, so its similar 
to a general purpose language. While you said above " a coordination 
language need not specify anything more than coordination."
Coordination must allow for some random schedule and be able to "route" 
based on the runtime-situation IMHO.
JaimeVargas
18-May-2006
[930x3]
Coordination can help prune non-determinism, coordination is different 
than communication between threads, lazy evaluation and continuations 
couuld help here, using a declarative approach to the whole computation 
can help get rid off non-determinism. The basic ideas are found in 
the CTM book.
Gabriele, Do you have documents that delienate how the communications 
between tasks will happen?
ideas == principles
Gabriele
18-May-2006
[933]
Jaime, not yet, but most likely each task will have a message port.
JaimeVargas
18-May-2006
[934]
Volker, Do you really mean this "Complete determinism makes no sense 
with parallel IMHO", the idea of paralellism is to  be able to perform 
any computation  done by a sequential machine faster, a random paralell 
machine may have some uses, but none of the mainstraem ;-)
Pekr
18-May-2006
[935]
huh, cool discussion - not that I would understand most of the things 
:-) Don't you want Pierre to join us to help you find the correct 
philosophy? :-)
JaimeVargas
18-May-2006
[936]
Getting Real Work Shop - 

https://workshop.37signals.com/

   Getting Real is about getting the interface right before you get 
   the software wrong. It's about less software, making change inexpensive 
   and constant iteration. Less paper, more work. Less talk, more walk. 
   Getting Real is about deliverin
Volker
18-May-2006
[937x2]
What sense makes perfect determinism with multiple physical inputs 
, like sensors or people entering data? The entries and their order 
is slightly off anyway.
It must be determined that things are processed, but not where and 
when.
Louis
18-May-2006
[939x2]
Has anyone made rebol software to fill out forms scanned from paper?
Whoops. Wrong group, but I'll not post again.
Henrik
18-May-2006
[941]
that would be reading with OCR?
Louis
18-May-2006
[942x2]
No. Just scanned in as graphic file.
I also want to save the data so I can edit it and fill out the form 
again later.
Terry
18-May-2006
[944]
huh?
Henrik
18-May-2006
[945]
that sounds a little ineffective?
Louis
18-May-2006
[946x2]
I am thinking the data would be in a layer above the graphic form. 
Click in the right spots, fill in the right data, print out the completed 
form, then save the data with the form  for later use. Something 
real simpe anyone can use.
There are still companies using paper forms, and I have to fill them 
out by hand. No fun.
Henrik
18-May-2006
[948x3]
that sounds like XForms to me
openoffice 2.0 has a free XForms implementation. it can save PDF's 
like this so you can edit them like a real form. I haven't worked 
with it deeply, but I think you can save data from them in a database.
edit them like a real form
 => edit them like a real form in adobe reader
Louis
18-May-2006
[951]
OK, thanks. I''ll check it out.
Graham
18-May-2006
[952]
An image can be used as a backdrop to a layout.  Stick some fields 
on top and you're done.
Terry
18-May-2006
[953]
or just make your own form
JaimeVargas
18-May-2006
[954x2]
What sense makes perfect determinism with multiple physical inputs 
, like sensors or people entering data? The entries and their order 
is slightly off anyway

 You can still have deterministic computation even in such situation. 
 We do have that today with any multitasking OS. Or would you like 
 to have your programs to produce any random result?
Volker, The fact that events can arrive at any given time doesn't 
mean that you can not have deterministic paralellel computation.
Volker
18-May-2006
[956]
No, i want my program to have s much determinism as needed. I call 
"perfect determinism" when i know "this stuff is done on cpu3, then 
the other thing a bit later on cpu4". That is perfectly repeatable. 
But that is not what i need. "this stuff is done on the next free 
cpu" is enough. But to do that, i need a language which can determine 
what this next free cpu is. And for that i need a general purpose 
language (counting cpus, acountig used time, priorities etc). While 
you said general purpose is not needed for a coordination language. 
But maybe i miss simething, maybe coordination means something different?
JaimeVargas
18-May-2006
[957]
I never said that you need or not a general purpose language. As 
matter of fact, I don't think being general purpose has anything 
to do with concurrency. What I understand is than any new features 
that add concurrency  to  a language should do so in a manner that 
avoid non-deterministic results. Some languages have already accomplished 
 this goal, usually avoiding  threads. Threads operate more at  the 
OS level than the language one. So I hope R3 bring us good concurrency 
features, that ensure that our programs are deterministic, otherwise 
we could be shipping programs that at first glancelook correct and 
 will work, but could  fail later in production as the paper points 
out.
Volker
18-May-2006
[958x3]
I understood that the should be a coordination language coordinating 
stuff written in general purpose language. instead of putting coordination 
features in those languages.
And Erlang seems to work good, based on general purpose with threads 
and messages.
And their main priority is reliability, so correctness.