From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.237.54.196 with SMTP id f62mr7191078qtb.5.1466156658062; Fri, 17 Jun 2016 02:44:18 -0700 (PDT) X-Received: by 10.157.63.245 with SMTP id i50mr73648ote.9.1466156657811; Fri, 17 Jun 2016 02:44:17 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!mx02.eternal-september.org!feeder.eternal-september.org!usenet.blueworldhosting.com!feeder01.blueworldhosting.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!v48no3129286qgd.0!news-out.google.com!u18ni68qgd.1!nntp.google.com!31no1482384qgh.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Fri, 17 Jun 2016 02:44:17 -0700 (PDT) Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=192.76.172.84; posting-account=21X1fwoAAABfSGdxRzzAXr3Ux_KE3tHr NNTP-Posting-Host: 192.76.172.84 User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <58b78af5-28d8-4029-8804-598b2b63013c@googlegroups.com> Subject: RFC: Prototype for a user threading library in Ada From: Hadrien Grasland Injection-Date: Fri, 17 Jun 2016 09:44:18 +0000 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Xref: news.eternal-september.org comp.lang.ada:30767 Date: 2016-06-17T02:44:17-07:00 List-Id: So, a while ago, after playing with the nice user-mode threading libraries = that are available these days in C++, like Intel TBB and HPX, I thought it = would be nice if Ada had something similar. Looking around for existing work, I found a number of projects with custom,= relatively specialized mechanisms, and a very nice library called Paraffin= whose high-level data-parallel interface I found highly interesting, but w= hose lower-level tasking abstractions did not match what I had in mind. So I decided to have a go at my vision of a low-level user threading model,= taking plenty of inspiration from other designs which I am fond of such as= OpenCL's command queues. Today, I am confident that the resulting design and implementation is solid= enough for third party review. So if anyone here is interested, please hav= e a go at studying it on GitHub! https://github.com/HadrienG2/ada-async-tests I tried to write a fairly extensive README which explains what I had in min= d, what I have done, what I plan to do next if this experiment is conclusiv= e, and which design points require particular attention today in my opinion= . I do not have a license yet, because I couldn't decide on a nice name for t= his project at this point (ada-async is already taken...). But anyway, I re= ally wouldn't recommend anyone to use this library at this stage, as I am s= till open to design and interface changes at this stage, so that's not so m= uch of an issue at this point. Once I get the name thing sorted out, you can most likely expect GPL or LGP= L licensing. These are my standard license for hobby projects: I don't want= any money for them, but your code is of high interest to me :) Hadrien