D Language 2.0
Bane
branimir.milosavljevic at gmail.com
Mon Jan 18 01:46:58 PST 2010
Nick Sabalausky Wrote:
> "Daniel" <dan.from.tokyo at gmail.com> wrote in message
> news:hj0pvc$2sil$1 at digitalmars.com...
> >
>
> Haven't we already had enough posts about "I don't like D2 because it
> doesn't add *enough* stuff"? Fuck, people, this shit takes time!
>
> > D still takes 80kb just to print "hello world" to the prompt.
> We *just* had a large debate over whether or not 200k was a problem for a
> "hello world". And now we're getting bellyaching over a measly 80k? WTF?
>
> Sure, it certainly makes a big difference on embedded stuff, but...well, see
> a couple paragraphs below:
>
> > When are we going to fix things so stuff is only
> > imported if it's used?
>
> When there aren't far more important things to take care of.
>
> > I went to write a small program for an embedded device, but because of
> > this I had to
> > abandon and rewrite it in C - and I have to work through a bit to find
> > where the program actually starts in IDA
> > Pro.
>
> D isn't even available for embedded platforms yet, AFAIK. Certainly not D2
> or DMD or in a real robust form anyway. And yea, I'd be one of the first
> people to agree that's a *major* missed opportunity, but there's only two
> real things to do about it: 1. help make it happen or 2. not whine about it.
> But until real embedded D actually does happen, trying to trim out a few k
> is worthless.
>
> >
> > Const does not provide me any guarantees that I couldn't already get with
> > in/out/inout and function contracts.
> > It does not guarantee that a value will not change because D doesn't
> > control the execution environment, what
> > const does is declare that it won't be changed by the program itself. We
> > can already check that automatically.
>
> > My problem is that now we have six dozen extra rules and a few more
> > keywords because of it.
>
> Function contracts are run-time. As such, they are absolutely no substitute
> for const, which is compile-time. If you don't have any problem with 1.
> bogging down execution with useless processing that could have already been
> handled at compile-time and 2. ignoring errors at compile-time so that they
> may-or-may-not be caught at run-time, then that's what those
> dynamic-language toys are for.
>
> The in/out/inout are only for function parameters and are not as
> fine-grained as const, so they're no substitute either.
>
> And if you don't care for const, don't use it.
>
> >
> > D is still aimed at the i486,
>
> Yea! That's terrible! Let's just deprecate anything less than 64-bit
> quad-core, because anything less than top-of-the-line is useless.
>
> And I don't want to hear that damn "but that's all that the stores sell!"
> strawman that I've heard a thousand times because everyone knows damn well
> that's not all that's *actually in use*.
>
> > and is just starting to handle threading.
>
> It's been no worse at threading than C/C++ for quite some time. It's just
> starting to have a threading model that kicks the crap out of the threading
> in the vast majority of languages out there. But that's a hell of a far cry
> from "just starting to handle threading".
>
> > My CPU is a Core i7, which is a quad-core.
>
> > It also has SSE4.2
>
>
>
>
> 1. Good for you.
>
> 2. Next week I'll sell my house to buy a 50-unit cluster of quintuple-cores
> with 1TB RAM each, and start bitching about any software or language that
> supports a pathetic, measly non-cluster with merely 8GB or so of RAM.
>
> Then I'll buy a Porsche and bitch and moan and carry on about any road that
> allows people to drive on it with a Corvette or, god-forbid, a sedan or
> anything else with a top-speed below 250+ mph.
>
>
> > It's been 20 years.
> >
>
> Let's all be consumer whores! Remember kids: "old" means "unpopular", and
> above all allse, we certainly don't want to be unpopular!
>
> >
> > cent and ucent should be available via SSE. Over 97% of computers now
> > have it and I still can't even assign to an
> > SSE register?
> >
>
> Submit a patch.
>
> > Don Clungston had some excellent code written up in BLADE found on dsource
> > 2 years ago. Shouldn't that have
> > become part of D native?
> >
>
> Maybe. Update it, merge it, and submit a patch.
>
> > D ought to have a way to express math without automatically executing it.
> > Some math can't execute on an x86,
> > and sometimes we just want to reduce instead of execute. Hell, if a
> > function were something we could reduce
> > and see, that would count. This also has value for optimization.
> >
>
> That would belong in a math library. See if it's already supported in one of
> the existing math libs, and if not, write it and put it on dsource.
>
> > An AST?
> >
>
> Already an intended future feature. But we obviously can't have everything
> and have it all right now.
>
> > D missed big on short circuit evaluation because they want to typedef
> > bool.
>
> D does do short-circuit evaluation. Not sure what you mean about it wanting
> to typedef bool.
>
> > I was hoping I'd be able to see
> > things like ||= &&=
>
> Submit a path or put a feature request on bugzilla. If there's already a
> ticket for it on bugzilla, then vote on it.
>
> > and x = y || z
> >
>
> That works just fine:
>
> void main()
> {
> bool x, y, z;
> x = y || z;
> }
>
> If it isn't doing short-circuit eval on that, then submit a patch or a
> bugzilla ticket, etc.
>
> > I also kind of hoped we'd see standard real world unit types in D. Like
> > sqft, meters, ohms, kg, L, Hz, seconds,
> > etc. native to D. Being able to intrinsically convert types between these
> > things would make D the most
> > approachable General Programming Language for real world problems.
> >
>
> 1. Considering how few languages support that, a lack of it is hardly
> something to hold against D.
>
> 2. Someone here has already made/posted a lib that does that. Don't remember
> who though, maybe they'll reply here. Or try searching the newsgroup for it.
> I know it's around somewhere.
>
> > Thanks for your time,
> > Dan
>
> If this post comes across overly harsh and inhospitable (and I realize it
> probably does), then I really do apologize. But it's just that we've had
> these very same discussions ("A: The problem with D is it doesn't have X!"
> "B: These things take time. / Then help out.") sooo many times here already,
> I'm getting quite tired of it.
>
>
>
>
>
Good points and colorful choice of words. I enjoyed reading this.
More information about the Digitalmars-d
mailing list