On Friday, 11 October 2013 at 00:36:12 UTC, Andrei Alexandrescu
wrote:
Today I committed the first 5112 lines of D code to Facebook's
repository. The project is in heavy daily use at Facebook.
Compared to the original version (written in C++) we've
measured massive wins in all of source code
My library uses a straight-forward reactor approach to handle incoming events
(IO,
timer etc). The library is structured as one-thread-per-core and as many
co-routines (fibers) per thread as memory will allow. The threads communicate
with each other via lock-free single-writer, single-reader
I believe I read in TDPL that D2 compilers actually assemble asm statement
code directly. This would seem to break modularity and require every compiler
to re-implement every possible assembler. Not exactly good news for a systems
programming language.
I hope I read that incorrectly because it
I'm sure it's a good assembler, I'm just thinking that if you wanted to
cross-develop for ARM or some other CPU you would have to write the assembler
for
it rather than leverage an existing ARM assembler.
Perhaps its easy enough to snag the critical assembler components from an
existing
Walter said...
I abandoned third-party assemblers years ago because...
1.
...
10.
All very good points. I stand corrected and yield the debate to the vastly
more
experienced party.
:-)
it for lock-free, multi-core, reactor-based
environment. The lock-free intercore message FIFOs are currently running
around 50 MT (mega transfers) a second.
Is it too late?
eris
Unfortunately, yes, by about three months:
Damn their eyes.
I'll have to do it anyway just for the fun of it.
:-)
?
That's the overview.
eris
So, I started working back up my list of outstanding multicore patches
Andrei wrote:
Or early by nine!
Ah, yes. Ahem. That's what I meant. I typo'd it. That should read 'for
GSOC2012'.
Hi,
I've been converting 'qtd' (the qt lib interface for D) to ldc / D2 version.
Apparently some areas of the phobos and druntime library are still a little
green for D2 or LDC2 because I'm jumping through some hoops to make it work.
Minor Issues:
1. core.thread is still using 'volatile'
Yes, but it appears that I must have checked out an earlier version that had
bugs.
I'm not sure how that happened. I built it according to the directions on the
qtd page.
After looking at their Atomic.d implementation, I see numerous updates that
should
fix several issues.
I'll re-checkout
;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9472;#9496;
draco%
Have fun and let me know if you need anything...
eris
Andrei Alexandrescu Wrote:
std.stdio - std.io
Rationale: stuttering sucks.
Absolutely.
BidirectionalRange - DoublyEndedRange
Rationale: bidirectional suggests something that can move *in* either
direction, whereas in fact the range can be shortened from either end.
It's an
Nick Sabalausky Wrote:
eris jvbur...@gmail.com wrote in message
news:i1i4bs$1c0...@digitalmars.com...
It's an improvement, but I believe the proper English prefix for something
that is doubly-reflective in that sense is Duplex. It's also easier and
shorter to pronounce. Say
Just though I'd post here on something that made me question my sanity late
one night.
I was working on some test code and for some reason put parens around
myArray.reverse. After that the compiler complained that reverse was an
unknown identifier. It took me about 30 minutes at 2am to finally
Assuming -unittest is asserted, should a D compiler generate and run unittest
code for classes that have unittests, but don't reference the class during
execution?
I noticed that gdc does compile them in, but the current version of ldc doesn't.
eris
Slight clarification of unittest behavior:
- ldc will compile the unittest as long as a single reference to the class
remains
- gdc will compile the unittest regardless
ie:
class A { void hello() { Stdout(hello); }
unittest { A myobj; myobj = new A(); a.hello() }
void main() {
A
Just thought I'd provide a link here in case someone didn't see the
announcement in d.announce.
Anyone who wants to participate is welcome is join in.
See the announcement in d.announce.
That is all.
at the BitBucket source repository here:
http://bitbucket.org/eris0xaa/dendrite/
BitBucket also supports a per-project Wiki which I'll be using to document
further Dendrite build instructions, use-cases, examples etc. I'd be more
than happy to welcome anyone who would like to participate.
eris
Hi all
I'm trying to finish up a 0.9 release of a new open source package that's
taken a fair amount of my spare time lately, but I can't seem to get it past
the final build stage.
- I'm using linux and recent versions of ldc, tango and Descent. I'm using D
language 1.x.
- I was using simple
Andrei,
I don't see why you couldn't see through it, unless you weren't expanding the
mixin.
The component factory pulls it blueprints from a directory path created by the
mixin. This path is imported in the namespace of the factory, thus limiting the
factory to creating components from a
Like Trass3r said, xfbuild will do what you want just fine. I use it.
I don't know much about 'bud', other than it's pretty old, but some people
use it (I know bearophile does), so I assume it must have some virtues.
As far as 'make', well, personally, I hate all forms of 'make' with a
a semantic pass and
deduces that it needs to import/build the Minimal blueprints (at this time only
IntStreamer).
So it looks like dmd is prepared to build it. When DSSS passed the objects to
the
gcc link stage the only thing it couldn't resolve was the IntStreamer component.
eris
think I could create a mixin that would generate
automatic factory methods.
(This is probably obvious and I was just too tired last night.)
Thanks for your help,
eris
Robert Fraser Wrote:
eris wrote:
bearophile Wrote:
eris:
Is there any way to get around including the exclamation point?
!(int) tells the template what type is T. Somewhere you have to tell it
what type of items you want to put inside it.
The alternative is like the old Java
, doesn't need a database backend and is
simple to admin.
eris
That said, I've only ever run one wiki package, mediawiki, and it was a pain
in
the rear. The debian packaging of it sucks. I dunno if it's any easier to
manage just off the official releases.
Anyone have a wiki package
, doesn't need a database backend and is
simple to admin.
eris
That said, I've only ever run one wiki package, mediawiki, and it was a pain
in
the rear. The debian packaging of it sucks. I dunno if it's any easier to
manage just off the official releases.
Anyone have a wiki package
eris Wrote:
Brad Roberts Wrote:
This has come up before and never really gone anywhere. I've considered
setting
up a new, modern, wiki for us to migrate to. Prowiki has a number of
limitations that annoy me at least. The biggest is it's history management
sucks. Looking at what
tried using this form, but I don't think the syntax is valid.
Thanks,
eris
Denis Koroskin Wrote:
On Thu, 04 Jun 2009 20:35:13 +0400, eris jvbur...@gmail.com wrote:
Greetings D People
---
Your ideas are right, but code smells a bit :) Just a few comments:
- what's len? It's never initialized. There's no need to have it, because
you can use
point thusly:
auto top32 = MaxRank!(int)(32);
Well, that kind of defeats one of the purposes of creating a template alias.
With just a little more effort I can just type:
auto top32 = Rank!(int, ORDER.ASCENDING);
Is there any way to get around including the exclamation point?
Thanks,
eris
Daniel Keep Wrote:
eris wrote:
...
Is there any way to get around including the exclamation point?
Thanks,
eris
No.
Succint! :-)
If you want more explanation than that: No, because if you did, the
parser wouldn't be able to tell when something is supposed
bearophile Wrote:
eris:
Is there any way to get around including the exclamation point?
!(int) tells the template what type is T. Somewhere you have to tell it what
type of items you want to put inside it.
The alternative is like the old Java, where your collections contain
references
33 matches
Mail list logo