Discussion:
At the language-level support for Micro-thread?
Jet via Digitalmars-d
2014-09-23 03:07:38 UTC
Permalink
I hope the Dlang can have the Micro-thread at the language-level.
Like the Goroutine, maby.
Idan Arye via Digitalmars-d
2014-09-23 08:06:35 UTC
Permalink
Post by Jet via Digitalmars-d
I hope the Dlang can have the Micro-thread at the
language-level. Like the Goroutine, maby.
Sure it can - it's called "Fibers":

http://dlang.org/phobos/core_thread.html#.Fiber
Daniel Kozak via Digitalmars-d
2014-09-23 08:14:35 UTC
Permalink
V Tue, 23 Sep 2014 08:06:35 +0000
Post by Idan Arye via Digitalmars-d
Post by Jet via Digitalmars-d
I hope the Dlang can have the Micro-thread at the
language-level. Like the Goroutine, maby.
http://dlang.org/phobos/core_thread.html#.Fiber
Yep, AFAIK there is still no scheduler
Atila Neves via Digitalmars-d
2014-09-23 12:14:15 UTC
Permalink
On Tuesday, 23 September 2014 at 08:14:50 UTC, Daniel Kozak via
Post by Daniel Kozak via Digitalmars-d
V Tue, 23 Sep 2014 08:06:35 +0000
Idan Arye via Digitalmars-d <digitalmars-d at puremagic.com>
Post by Idan Arye via Digitalmars-d
Post by Jet via Digitalmars-d
I hope the Dlang can have the Micro-thread at the
language-level. Like the Goroutine, maby.
http://dlang.org/phobos/core_thread.html#.Fiber
Yep, AFAIK there is still no scheduler
vibe.d.

Atila
Daniel Kozak via Digitalmars-d
2014-09-23 12:19:31 UTC
Permalink
V Tue, 23 Sep 2014 12:14:15 +0000
Post by Atila Neves via Digitalmars-d
On Tuesday, 23 September 2014 at 08:14:50 UTC, Daniel Kozak via
Post by Daniel Kozak via Digitalmars-d
V Tue, 23 Sep 2014 08:06:35 +0000
Idan Arye via Digitalmars-d <digitalmars-d at puremagic.com>
Post by Idan Arye via Digitalmars-d
Post by Jet via Digitalmars-d
I hope the Dlang can have the Micro-thread at the
language-level. Like the Goroutine, maby.
http://dlang.org/phobos/core_thread.html#.Fiber
Yep, AFAIK there is still no scheduler
vibe.d.
Atila
I know, but I mean there is no scheduler in standard library or at
language-level
Sean Kelly via Digitalmars-d
2014-09-23 13:41:49 UTC
Permalink
On Tuesday, 23 September 2014 at 12:19:52 UTC, Daniel Kozak via
Post by Daniel Kozak via Digitalmars-d
I know, but I mean there is no scheduler in standard library or
at language-level
That code has been written for almost a year now. Someone will
pull it eventually :-/
Andrei Alexandrescu via Digitalmars-d
2014-09-23 15:44:19 UTC
Permalink
Post by Sean Kelly via Digitalmars-d
On Tuesday, 23 September 2014 at 12:19:52 UTC, Daniel Kozak via
Post by Daniel Kozak via Digitalmars-d
I know, but I mean there is no scheduler in standard library or at
language-level
That code has been written for almost a year now. Someone will pull it
eventually :-/
In fairness, https://github.com/D-Programming-Language/phobos/pull/1910
needs your attention. It's failing unittests. -- Andrei
Sean Kelly via Digitalmars-d
2014-09-23 16:11:19 UTC
Permalink
On Tuesday, 23 September 2014 at 15:44:19 UTC, Andrei
Post by Andrei Alexandrescu via Digitalmars-d
Post by Sean Kelly via Digitalmars-d
On Tuesday, 23 September 2014 at 12:19:52 UTC, Daniel Kozak via
Post by Daniel Kozak via Digitalmars-d
I know, but I mean there is no scheduler in standard library
or at
language-level
That code has been written for almost a year now. Someone
will pull it
eventually :-/
In fairness,
https://github.com/D-Programming-Language/phobos/pull/1910
needs your attention. It's failing unittests. -- Andrei
On Win64 only. The problem isn't with the pull request but
rather with fibers on Win64 or with something else entirely
(unclear, given the stack traces I've seen so far). ie. The
problem was that I added unittests that didn't exist before which
may have uncovered an existing issue. I've considered simply
disabling the tests on Win64 until whatever is going on there can
be sorted out. I don't have a Win64 test environment so I've
been relying on others to provide info.
Andrei Alexandrescu via Digitalmars-d
2014-09-23 16:20:25 UTC
Permalink
Post by Andrei Alexandrescu via Digitalmars-d
Post by Sean Kelly via Digitalmars-d
On Tuesday, 23 September 2014 at 12:19:52 UTC, Daniel Kozak via
Post by Daniel Kozak via Digitalmars-d
I know, but I mean there is no scheduler in standard library or at
language-level
That code has been written for almost a year now. Someone will pull it
eventually :-/
In fairness,
https://github.com/D-Programming-Language/phobos/pull/1910 needs your
attention. It's failing unittests. -- Andrei
On Win64 only. The problem isn't with the pull request but rather with
fibers on Win64 or with something else entirely (unclear, given the
stack traces I've seen so far). ie. The problem was that I added
unittests that didn't exist before which may have uncovered an existing
issue. I've considered simply disabling the tests on Win64 until
whatever is going on there can be sorted out. I don't have a Win64 test
environment so I've been relying on others to provide info.
I guess you can disable the whole feature on Win64 and leave it to
someone else to introduce it. You can't work on this stuff without a
box. -- Andrei
David Nadlinger via Digitalmars-d
2014-09-23 16:27:53 UTC
Permalink
On Tuesday, 23 September 2014 at 16:20:25 UTC, Andrei
Post by Andrei Alexandrescu via Digitalmars-d
I guess you can disable the whole feature on Win64 and leave it
to someone else to introduce it. You can't work on this stuff
without a box. -- Andrei
Yes, but don't forget that there are still a few actual,
unresolved issues with the PR (and I'm not talking about my
documentation nit-picks here, they could also be done separately).

David
Andrei Alexandrescu via Digitalmars-d
2014-09-23 16:38:13 UTC
Permalink
Post by Andrei Alexandrescu via Digitalmars-d
I guess you can disable the whole feature on Win64 and leave it to
someone else to introduce it. You can't work on this stuff without a
box. -- Andrei
Yes, but don't forget that there are still a few actual, unresolved
issues with the PR (and I'm not talking about my documentation nit-picks
here, they could also be done separately).
Sean? -- Andrei
Sean Kelly via Digitalmars-d
2014-09-23 16:56:34 UTC
Permalink
On Tuesday, 23 September 2014 at 16:38:14 UTC, Andrei
Post by Andrei Alexandrescu via Digitalmars-d
Post by David Nadlinger via Digitalmars-d
On Tuesday, 23 September 2014 at 16:20:25 UTC, Andrei
Post by Andrei Alexandrescu via Digitalmars-d
I guess you can disable the whole feature on Win64 and leave
it to
someone else to introduce it. You can't work on this stuff
without a
box. -- Andrei
Yes, but don't forget that there are still a few actual,
unresolved
issues with the PR (and I'm not talking about my documentation nit-picks
here, they could also be done separately).
Sean? -- Andrei
I wasn't aware of any. Someone suggested moving Generator to a
separate module and I explained why this isn't advisable. If
there are other issues, I would appreciate it if someone would
restate them.
David Nadlinger via Digitalmars-d
2014-09-23 17:31:30 UTC
Permalink
Post by Sean Kelly via Digitalmars-d
I wasn't aware of any. Someone suggested moving Generator to a
separate module and I explained why this isn't advisable. If
there are other issues, I would appreciate it if someone would
restate them.
1) There is still Martin's point that Boost.Coroutine seems to
use a different design. I haven't had a look at it in any detail,
but I think it would be good to briefly comment on why their
choices would not be a good fit for us. After all, one would
suspect that they started out with vaguely similar design space
restrictions and goals.

2) There are still a couple of typos in the docs, and at least
one code quality suggestion (`auto ref`). Just scroll through the
non-outdated GitHub comments.

David
Sean Kelly via Digitalmars-d
2014-09-23 18:05:09 UTC
Permalink
On Tuesday, 23 September 2014 at 17:31:31 UTC, David Nadlinger
Post by David Nadlinger via Digitalmars-d
Post by Sean Kelly via Digitalmars-d
I wasn't aware of any. Someone suggested moving Generator to
a separate module and I explained why this isn't advisable.
If there are other issues, I would appreciate it if someone
would restate them.
1) There is still Martin's point that Boost.Coroutine seems to
use a different design. I haven't had a look at it in any
detail, but I think it would be good to briefly comment on why
their choices would not be a good fit for us. After all, one
would suspect that they started out with vaguely similar design
space restrictions and goals.
I thought I did :-) Generator is a limited version of a
coroutine, which I created both in response to some features in
other languages like Go and because of something that came up
during Chuck Allison's talk at the conference this year. It's
possible that Boost-style coroutines will be added later and
Generator will be made a special case of these, but that should
not affect the current API. I think it still has merit as a
standalone thing, as Boost-style coroutines won't work as an
input range (which is the point of Generators).
Post by David Nadlinger via Digitalmars-d
2) There are still a couple of typos in the docs, and at least
one code quality suggestion (`auto ref`). Just scroll through
the non-outdated GitHub comments.
I must have missed this. I'll check.
Steven Schveighoffer via Digitalmars-d
2014-09-25 12:09:24 UTC
Permalink
Post by Andrei Alexandrescu via Digitalmars-d
Post by Sean Kelly via Digitalmars-d
On Tuesday, 23 September 2014 at 12:19:52 UTC, Daniel Kozak via
Post by Daniel Kozak via Digitalmars-d
I know, but I mean there is no scheduler in standard library or at
language-level
That code has been written for almost a year now. Someone will pull it
eventually :-/
In fairness,
https://github.com/D-Programming-Language/phobos/pull/1910 needs your
attention. It's failing unittests. -- Andrei
On Win64 only. The problem isn't with the pull request but rather with
fibers on Win64 or with something else entirely (unclear, given the
stack traces I've seen so far). ie. The problem was that I added
unittests that didn't exist before which may have uncovered an existing
issue. I've considered simply disabling the tests on Win64 until
whatever is going on there can be sorted out. I don't have a Win64 test
environment so I've been relying on others to provide info.
I have a win 64 VM running on VMWare, which I use for work, but not
super-often.

Send me an email, I'll give you access via TeamViewer if you want to try
stuff out.

-Steve

Jet via Digitalmars-d
2014-09-24 11:55:44 UTC
Permalink
Post by Idan Arye via Digitalmars-d
Post by Jet via Digitalmars-d
I hope the Dlang can have the Micro-thread at the
language-level. Like the Goroutine, maby.
http://dlang.org/phobos/core_thread.html#.Fiber
Oh, language-level ?
via Digitalmars-d
2014-09-24 12:29:56 UTC
Permalink
Post by Jet via Digitalmars-d
Post by Idan Arye via Digitalmars-d
Post by Jet via Digitalmars-d
I hope the Dlang can have the Micro-thread at the
language-level. Like the Goroutine, maby.
http://dlang.org/phobos/core_thread.html#.Fiber
Oh, language-level ?
What's wrong with a library implementation?
Continue reading on narkive:
Loading...