Question about E's history.
Hi!
_______________________________________________ e-lang mailing list e-lang@... http://www.eros-os.org/mailman/listinfo/e-lang
Hi!
_______________________________________________ e-lang mailing list e-lang@... http://www.eros-os.org/mailman/listinfo/e-lang
On Tue, Jun 7, 2011 at 1:31 PM, Constantine Plotnikov <constantine.plotnikov <at> gmail.com> wrote:
Hi!One of very nice features of E is that operation of listening for promise with when returns a promise, so asynchronous operations could be composed and it enables functional asynchronous programming. I'm interested whether it is E's original invention or E has borrowed the idea from somewhere?
I'm also interested if there is some document that describes origins of core ideas on which E's concurrency model is based.
Thanks,Constantine
_______________________________________________
e-lang mailing list
e-lang-r2jiIPW7MOYEUp5O9OQuKg@public.gmane.org
http://www.eros-os.org/mailman/listinfo/e-lang
_______________________________________________ e-lang mailing list e-lang@... http://www.eros-os.org/mailman/listinfo/e-lang
Hi Constantine,
Hi!One of very nice features of E is that operation of listening for promise with when returns a promise, so asynchronous operations could be composed and it enables functional asynchronous programming. I'm interested whether it is E's original invention or E has borrowed the idea from somewhere?I'm also interested if there is some document that describes origins of core ideas on which E's concurrency model is based.Thanks,Constantine
_______________________________________________
e-lang mailing list
e-lang-r2jiIPW7MOYEUp5O9OQuKg@public.gmane.org
http://www.eros-os.org/mailman/listinfo/e-lang
_______________________________________________ e-lang mailing list e-lang@... http://www.eros-os.org/mailman/listinfo/e-lang
Hi Constantine,Having looked at various actor languages, I have not previously encountered the type of asynchronous composability that when-expressions provide. So E may be the first language to have introduced this feature.About E's origins: in the paper "Concurrency among strangers", there is a section titled "From objects to actors and back again" (section 11) which I feel is a good reference to work that inspired E: <http://www.erights.org/talks/promises/index.html>In general, I believe the actor model served as the greatest source of inspiration for E: <http://en.wikipedia.org/wiki/Actor_model>
I know from Mark that promises in Liskov's Argus language were also a source of inspiration for promises in E.
However, Argus's promises, unlike E's promises, support synchronous "claiming" or "touching" of the promise.
Kind regards,Tom2011/6/7 Constantine Plotnikov <constantine.plotnikov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Hi!One of very nice features of E is that operation of listening for promise with when returns a promise, so asynchronous operations could be composed and it enables functional asynchronous programming. I'm interested whether it is E's original invention or E has borrowed the idea from somewhere?I'm also interested if there is some document that describes origins of core ideas on which E's concurrency model is based.Thanks,Constantine
_______________________________________________
e-lang mailing list
e-lang-Ch164+GDJMs@public.gmane.orgos-os.org
http://www.eros-os.org/mailman/listinfo/e-lang
_______________________________________________
e-lang mailing list
e-lang-r2jiIPW7MOYEUp5O9OQuKg@public.gmane.org
http://www.eros-os.org/mailman/listinfo/e-lang
_______________________________________________ e-lang mailing list e-lang@... http://www.eros-os.org/mailman/listinfo/e-lang
Hello All!
For those, who liked E concurrency model, but also like strongly typed languages, there is now an option available: AsyncScala
The project is combination of ideas from E and Occam, and I have already discussed the ideas for the project on this mailing list. I have managed to implement it on library level, and I believe that implementing it in other languages that have a reasonable closures should be easy as well. Some ideas could be even back-ported to E.
Primary area for which it is targeted is IO-bound applications. There is already NIO-library that is almost as easy to program to as with normal synchronous sockets. Also tried to port some ideas from Rx presentation as streams library.
Thanks,
Constantine
_______________________________________________ e-lang mailing list e-lang@... http://www.eros-os.org/mailman/listinfo/e-lang
On Sat, Jun 11, 2011 at 12:01 PM, Tom Van Cutsem <tomvc.be <at> gmail.com> wrote:...Hi Constantine,Having looked at various actor languages, I have not previously encountered the type of asynchronous composability that when-expressions provide. So E may be the first language to have introduced this feature.About E's origins: in the paper "Concurrency among strangers", there is a section titled "From objects to actors and back again" (section 11) which I feel is a good reference to work that inspired E: <http://www.erights.org/talks/promises/index.html>In general, I believe the actor model served as the greatest source of inspiration for E: <http://en.wikipedia.org/wiki/Actor_model>
I know from Mark that promises in Liskov's Argus language were also a source of inspiration for promises in E.Not inspiration, but precedence and therefore credit. In 1989, Dean, I, and others independently came up with a promise pipelining model similar to Liskov and Shrira's promises as part of the Xanadu (aka Udanax Gold) work <http://web.archive.org/web/20071023111712/http://www.sunless-sea.net/Transcripts/promise.html>. Afterwards, we found out about their 1988 paper <http://portal.acm.org/citation.cfm?idT016>, and so have consistently given them credit for inventing the idea first, as they did.
_______________________________________________ e-lang mailing list e-lang@... http://www.eros-os.org/mailman/listinfo/e-lang
On Sat, Jun 11, 2011 at 7:47 PM, Jonathan Rees <jar-yMXdqOOGdVisTnJN9+BGXg@public.gmane.org> wrote:
Is this relevant as precedent? It was pretty well developed by 1984http://en.wikipedia.org/wiki/MultiLisp
but I don't know how well developed it was regarding pipelining.
I suspect they got the 'promise' idea from Hewitt.
JonathanOn Jun 11, 2011, at 4:23 PM, Mark S. Miller wrote:
...Hi Constantine,Having looked at various actor languages, I have not previously encountered the type of asynchronous composability that when-expressions provide. So E may be the first language to have introduced this feature.About E's origins: in the paper "Concurrency among strangers", there is a section titled "From objects to actors and back again" (section 11) which I feel is a good reference to work that inspired E: <http://www.erights.org/talks/promises/index.html>In general, I believe the actor model served as the greatest source of inspiration for E: <http://en.wikipedia.org/wiki/Actor_model>
I know from Mark that promises in Liskov's Argus language were also a source of inspiration for promises in E.Not inspiration, but precedence and therefore credit. In 1989, Dean, I, and others independently came up with a promise pipelining model similar to Liskov and Shrira's promises as part of the Xanadu (aka Udanax Gold) work <http://web.archive.org/web/20071023111712/http://www.sunless-sea.net/Transcripts/promise.html>. Afterwards, we found out about their 1988 paper <http://portal.acm.org/citation.cfm?idT016>, and so have consistently given them credit for inventing the idea first, as they did.
_______________________________________________
e-lang mailing list
e-lang-r2jiIPW7MOYEUp5O9OQuKg@public.gmane.org
http://www.eros-os.org/mailman/listinfo/e-lang
_______________________________________________ e-lang mailing list e-lang@... http://www.eros-os.org/mailman/listinfo/e-lang
Some E promise history:
Is this relevant as precedent? It was pretty well developed by 1984http://en.wikipedia.org/wiki/MultiLispbut I don't know how well developed it was regarding pipelining. I suspect they got the 'promise' idea from Hewitt.JonathanOn Jun 11, 2011, at 4:23 PM, Mark S. Miller wrote:...Hi Constantine,Having looked at various actor languages, I have not previously encountered the type of asynchronous composability that when-expressions provide. So E may be the first language to have introduced this feature.About E's origins: in the paper "Concurrency among strangers", there is a section titled "From objects to actors and back again" (section 11) which I feel is a good reference to work that inspired E: <http://www.erights.org/talks/promises/index.html>In general, I believe the actor model served as the greatest source of inspiration for E: <http://en.wikipedia.org/wiki/Actor_model>
I know from Mark that promises in Liskov's Argus language were also a source of inspiration for promises in E.Not inspiration, but precedence and therefore credit. In 1989, Dean, I, and others independently came up with a promise pipelining model similar to Liskov and Shrira's promises as part of the Xanadu (aka Udanax Gold) work <http://web.archive.org/web/20071023111712/http://www.sunless-sea.net/Transcripts/promise.html>. Afterwards, we found out about their 1988 paper <http://portal.acm.org/citation.cfm?idT016>, and so have consistently given them credit for inventing the idea first, as they did.
_______________________________________________
e-lang mailing list
e-lang-r2jiIPW7MOYEUp5O9OQuKg@public.gmane.org
http://www.eros-os.org/mailman/listinfo/e-lang
_______________________________________________ e-lang mailing list e-lang@... http://www.eros-os.org/mailman/listinfo/e-lang
I suspect they got the 'promise' idea from Hewitt.Yes. Hewitt and Baker.

JonathanOn Jun 11, 2011, at 4:23 PM, Mark S. Miller wrote:
...Hi Constantine,Having looked at various actor languages, I have not previously encountered the type of asynchronous composability that when-expressions provide. So E may be the first language to have introduced this feature.About E's origins: in the paper "Concurrency among strangers", there is a section titled "From objects to actors and back again" (section 11) which I feel is a good reference to work that inspired E: <http://www.erights.org/talks/promises/index.html>In general, I believe the actor model served as the greatest source of inspiration for E: <http://en.wikipedia.org/wiki/Actor_model>
I know from Mark that promises in Liskov's Argus language were also a source of inspiration for promises in E.Not inspiration, but precedence and therefore credit. In 1989, Dean, I, and others independently came up with a promise pipelining model similar to Liskov and Shrira's promises as part of the Xanadu (aka Udanax Gold) work <http://web.archive.org/web/20071023111712/http://www.sunless-sea.net/Transcripts/promise.html>. Afterwards, we found out about their 1988 paper <http://portal.acm.org/citation.cfm?idT016>, and so have consistently given them credit for inventing the idea first, as they did.
_______________________________________________
e-lang mailing list
e-lang-Ch164+GDJMs@public.gmane.orgos-os.org
http://www.eros-os.org/mailman/listinfo/e-lang
--
Cheers,
--MarkM
_______________________________________________
e-lang mailing list
e-lang-r2jiIPW7MOYEUp5O9OQuKg@public.gmane.org
http://www.eros-os.org/mailman/listinfo/e-lang
_______________________________________________ e-lang mailing list e-lang@... http://www.eros-os.org/mailman/listinfo/e-lang
It's interesting to note the many design dimensions of promises/futures that have been explored over the years, including:- whether "touching" or "claiming" a future/promise is blocking or non-blocking- whether "touching" or "claiming" a future/promise is implicit (by performing an operation that needs its value) or explicit (e.g. future.get() in Java, promise claiming in Argus)- whether the type Future<T> is distinct from the type T, in statically typed languages- whether futures/promises are created implicitly as the return value of a message send or explicitly as in the Multilisp form "(future expr)"- whether or not "pipelining" is supported- whether or not futures/promises support proper exception propagationWhich only goes to say that "promise" and "future" are very overloaded terms
_______________________________________________ e-lang mailing list e-lang@... http://www.eros-os.org/mailman/listinfo/e-lang
RSS Feed2 | |
|---|---|
2 | |
2 | |
7 | |
52 | |
22 | |
4 | |
2 | |
1 | |
5 | |
4 | |
1 | |
6 | |
3 | |
8 | |
13 | |
16 | |
7 | |
9 | |
17 | |
10 | |
63 | |
9 | |
33 | |
36 | |
27 | |
15 | |
32 | |
13 | |
6 | |
13 | |
20 | |
36 | |
34 | |
40 | |
43 | |
50 | |
46 | |
7 | |
23 | |
54 | |
30 | |
33 | |
10 | |
39 | |
45 | |
71 | |
39 | |
26 | |
4 | |
16 | |
19 | |
47 | |
58 | |
42 | |
26 | |
44 | |
16 | |
167 | |
68 | |
38 | |
24 | |
52 | |
45 | |
62 | |
55 | |
30 | |
38 | |
49 | |
71 | |
73 | |
60 | |
99 | |
105 | |
81 | |
30 | |
23 | |
58 | |
91 | |
56 | |
121 | |
21 | |
31 | |
70 | |
18 | |
13 | |
13 | |
1 | |
19 | |
90 | |
102 | |
124 | |
93 | |
49 | |
32 | |
44 | |
121 | |
194 | |
30 | |
33 | |
47 | |
101 | |
65 | |
18 | |
24 | |
127 | |
76 | |
114 | |
89 | |
100 | |
93 | |
18 |