On Mon, 06 Jul 2009 21:29:43 -0700, Walter Bright wrote:
Derek Parnell wrote:
However, that aside, the syntax you have chosen will have a rational
explanation for its superiority. So can you explain in simple terms why
CaseLabelInt .. CaseLabelInt eg. case 1: .. case 9:
is superior
Ary Borenszweig wrote:
のしいか (noshiika) escribió:
Thank you for the great work, Walter and all the other contributors.
But I am a bit disappointed with the CaseRangeStatement syntax.
Why is it
case 0: .. case 9:
instead of
case 0 .. 9:
With the latter notation, ranges can be easily used
Hello Daniel,
[1] like me. My girlfriend disagrees with me on this,
You have a girlfriend that even bothers to have an opinion on a programming
issue, lucky bastard.
though. *I* think she's crazy, but I'm not exactly
inclined to try and change her mind. :)
That reminds me of a quote: If
On Tue, 07 Jul 2009 02:35:44 -0400, Robert Jacques sandf...@jhu.edu
wrote:
On Tue, 07 Jul 2009 01:48:41 -0400, Andrei Alexandrescu
seewebsiteforem...@erdani.org wrote:
Robert Jacques wrote:
On Mon, 06 Jul 2009 01:05:10 -0400, Walter Bright
newshou...@digitalmars.com wrote:
Something
Robert Jacques wrote:
On Tue, 07 Jul 2009 01:48:41 -0400, Andrei Alexandrescu
seewebsiteforem...@erdani.org wrote:
Robert Jacques wrote:
On Mon, 06 Jul 2009 01:05:10 -0400, Walter Bright
newshou...@digitalmars.com wrote:
Something for everyone here.
That's really cool. But I don't think that's actually happening (Or
are these the bugs you're talking about?):
byte x,y;
short z;
z = x+y; // Error: cannot implicitly convert expression
(cast(int)x + cast(int)y) of type int to short
// Repeat for ubyte, bool, char, wchar
Robert Jacques wrote:
Another inconsistency:
byte[] x,y,z;
z[] = x[]*y[]; // Compiles
Bugzilla is its name.
Andrei
Brad Roberts wrote:
That's really cool. But I don't think that's actually happening (Or
are these the bugs you're talking about?):
byte x,y;
short z;
z = x+y; // Error: cannot implicitly convert expression
(cast(int)x + cast(int)y) of type int to short
// Repeat for ubyte,
Andrei Alexandrescu escribió:
BCS wrote:
Hello Daniel,
[1] like me. My girlfriend disagrees with me on this,
You have a girlfriend that even bothers to have an opinion on a
programming issue, lucky bastard.
My understanding is that he's referring to a different issue.
though. *I* think
Ary Borenszweig wrote:
Jesse Phillips escribió:
On Mon, 06 Jul 2009 14:38:53 -0500, Andrei Alexandrescu wrote:
Denis Koroskin wrote:
Reuse goto?
So any case-labeled code should end either with a control flow statement
that transfers control elswhere? That sounds like a great idea.
Walter Bright wrote:
Something for everyone here.
http://www.digitalmars.com/d/1.0/changelog.html
http://ftp.digitalmars.com/dmd.1.046.zip
http://www.digitalmars.com/d/2.0/changelog.html
http://ftp.digitalmars.com/dmd.2.031.zip
Why is 'final switch' required? Another possible way of
KennyTM~ Wrote:
Maybe http://msdn.microsoft.com/en-us/vcsharp/aa336815.aspx .
That compromise design looks good to be adopted by D too :-)
Bye,
bearophile
aarti_pl, el 7 de julio a las 00:27 me escribiste:
Leandro Lucarella pisze:
Andrei Alexandrescu, el 6 de julio a las 10:44 me escribiste:
And what did those people use when they wanted to express a range of case
labels? In other words, where did those people turn their heads towards?
They
Andrei Alexandrescu, el 6 de julio a las 18:32 me escribiste:
Leandro Lucarella wrote:
Andrei Alexandrescu, el 6 de julio a las 10:44 me escribiste:
And what did those people use when they wanted to express a range of case
labels? In other words, where did those people turn their heads
On Tue, 07 Jul 2009 03:33:24 -0400, Andrei Alexandrescu
seewebsiteforem...@erdani.org wrote:
Robert Jacques wrote:
That's really cool. But I don't think that's actually happening (Or
are these the bugs you're talking about?):
byte x,y;
short z;
z = x+y; // Error: cannot
Robert Jacques wrote:
On Tue, 07 Jul 2009 03:33:24 -0400, Andrei Alexandrescu
seewebsiteforem...@erdani.org wrote:
Robert Jacques wrote:
That's really cool. But I don't think that's actually happening (Or
are these the bugs you're talking about?):
byte x,y;
short z;
z = x+y; //
Andrei Alexandrescu, el 7 de julio a las 00:48 me escribiste:
Robert Jacques wrote:
On Mon, 06 Jul 2009 01:05:10 -0400, Walter Bright
newshou...@digitalmars.com
wrote:
Something for everyone here.
http://www.digitalmars.com/d/1.0/changelog.html
On Tue, Jul 7, 2009 at 11:33 AM, Andrei
Alexandrescuseewebsiteforem...@erdani.org wrote:
Well 32-bit architectures may be a historical relic but I don't think 32-bit
integers are. And I think it would be too disruptive a change to promote
results of arithmetic operation between integers to
On Tue, 07 Jul 2009 08:53:49 +0200, Lars T. Kyllingstad wrote:
Ary Borenszweig wrote:
のしいか (noshiika) escribió:
Thank you for the great work, Walter and all the other contributors.
But I am a bit disappointed with the CaseRangeStatement syntax. Why is
it
case 0: .. case 9:
instead of
On Tue, 07 Jul 2009 11:36:26 -0400, Andrei Alexandrescu
seewebsiteforem...@erdani.org wrote:
Robert Jacques wrote:
Andrei, I have a short vector template (think vec!(byte,3), etc) where
I've had to wrap the majority lines of code in cast(T)( ... ), because
I support bytes and shorts. I
Andrei Alexandrescu wrote:
Derek Parnell wrote:
It seems that D would benefit from having a standard syntax format for
expressing various range sets;
a. Include begin Include end, i.e. []
b. Include begin Exclude end, i.e. [)
c. Exclude begin Include end, i.e. (]
d. Exclude begin Exclude
Jérôme M. Berger wrote:
Andrei Alexandrescu wrote:
Derek Parnell wrote:
It seems that D would benefit from having a standard syntax format for
expressing various range sets;
a. Include begin Include end, i.e. []
b. Include begin Exclude end, i.e. [)
c. Exclude begin Include end, i.e. (]
d.
Robert Jacques wrote:
On Tue, 07 Jul 2009 03:33:24 -0400, Andrei Alexandrescu
seewebsiteforem...@erdani.org wrote:
Robert Jacques wrote:
BTW: this means byte and short are not closed under arithmetic
operations, which drastically limit their usefulness.
I think they shouldn't be closed
Andrei Alexandrescu:
Safe D is concerned with memory safety only.
And hopefully you will understand that is wrong :-)
Bye,
bearophile
Andrei Alexandrescu:
I think Walter's message really rendered the whole discussion moot. Post
of the year:
=
I like:
a .. b+1
to mean inclusive range.
That was my preferred solution, starting from months ago.
Bye,
bearophile
Bill Baxter wrote:
2009/7/7 Andrei Alexandrescu seewebsiteforem...@erdani.org:
I think Walter's message really rendered the whole discussion moot. Post of
the year:
=
I like:
a .. b+1
to mean inclusive range.
=
Not everything is an integer.
Andrei Alexandrescu, el 7 de julio a las 13:18 me escribiste:
Jérôme M. Berger wrote:
Andrei Alexandrescu wrote:
Derek Parnell wrote:
It seems that D would benefit from having a standard syntax format for
expressing various range sets;
a. Include begin Include end, i.e. []
b. Include
Andrei Alexandrescu wrote:
Bill Baxter wrote:
2009/7/7 Andrei Alexandrescu seewebsiteforem...@erdani.org:
I think Walter's message really rendered the whole discussion moot.
Post of
the year:
=
I like:
a .. b+1
to mean inclusive range.
=
Andrei Alexandrescu wrote:
Jérôme M. Berger wrote:
Andrei Alexandrescu wrote:
Jérôme M. Berger wrote:
Andrei Alexandrescu wrote:
Jérôme M. Berger wrote:
Andrei Alexandrescu wrote:
Derek Parnell wrote:
It seems that D would benefit from having a standard syntax
format for
expressing
Andrei Alexandrescu seewebsiteforem...@erdani.org wrote in message
news:h2vprn$1t7...@digitalmars.com...
This is a different beast. We simply couldn't devise a satisfactory scheme
within the constraints we have. No simple solution we could think of has
worked, nor have a number of
Jérôme M. Berger wrote:
- A floating point range should allow you to specify the iteration
step, or else it should allow you to iterate through all numbers that
can be represented with the corresponding precision;
We don't have that, so you'd need to use a straigh for statement.
- The
Nick Sabalausky wrote:
Andrei Alexandrescu seewebsiteforem...@erdani.org wrote in message
news:h2vprn$1t7...@digitalmars.com...
This is a different beast. We simply couldn't devise a satisfactory scheme
within the constraints we have. No simple solution we could think of has
worked, nor have a
Andrei Alexandrescu, el 7 de julio a las 10:56 me escribiste:
Leandro Lucarella wrote:
This seems nice. I think it would be nice if this kind of things are
commented in the NG before a compiler release, to allow community input
and discussion.
Yup, that's what happened to case :o).
I
bearophile wrote:
Andrei Alexandrescu:
How often did you encounter that issue?
Please, let's be serious, and let's stop adding special cases to D,
or they will kill the language.
Don't get me going about what could kill the language.
Lately I have seen too many special
cases. For example
Andrei Alexandrescu wrote:
Jérôme M. Berger wrote:
- A floating point range should allow you to specify the iteration
step, or else it should allow you to iterate through all numbers that
can be represented with the corresponding precision;
We don't have that, so you'd need to use a straigh
Leandro Lucarella wrote:
Andrei Alexandrescu, el 7 de julio a las 10:56 me escribiste:
Leandro Lucarella wrote:
This seems nice. I think it would be nice if this kind of things are
commented in the NG before a compiler release, to allow community input
and discussion.
Yup, that's what
Jérôme M. Berger wrote:
Andrei Alexandrescu wrote:
Jérôme M. Berger wrote:
- A floating point range should allow you to specify the iteration
step, or else it should allow you to iterate through all numbers that
can be represented with the corresponding precision;
We don't have that, so
Walter Bright wrote:
Andrei Alexandrescu wrote:
Bill Baxter wrote:
2009/7/7 Andrei Alexandrescu seewebsiteforem...@erdani.org:
I think Walter's message really rendered the whole discussion moot.
Post of
the year:
=
I like:
a .. b+1
to mean inclusive range.
On Tue, 07 Jul 2009 14:16:14 -0400, Andrei Alexandrescu
seewebsiteforem...@erdani.org wrote:
Robert Jacques wrote:
On Tue, 07 Jul 2009 11:36:26 -0400, Andrei Alexandrescu
seewebsiteforem...@erdani.org wrote:
Robert Jacques wrote:
Andrei, I have a short vector template (think vec!(byte,3),
Andrei Alexandrescu, el 7 de julio a las 15:12 me escribiste:
Leandro Lucarella wrote:
Andrei Alexandrescu, el 7 de julio a las 10:56 me escribiste:
Leandro Lucarella wrote:
This seems nice. I think it would be nice if this kind of things are
commented in the NG before a compiler release,
On Tue, 07 Jul 2009 20:13:45 +0200, Jérôme M. Berger wrote:
Andrei Alexandrescu wrote:
Derek Parnell wrote:
It seems that D would benefit from having a standard syntax format for
expressing various range sets;
a. Include begin Include end, i.e. []
b. Include begin Exclude end, i.e. [)
On Tue, 07 Jul 2009 14:05:33 -0400, Robert Jacques wrote:
Well, how often does everyone else use bytes?
Cryptography, in my case.
--
Derek Parnell
Melbourne, Australia
skype: derek.j.parnell
On Tue, 07 Jul 2009 18:05:26 -0400, Derek Parnell de...@psych.ward wrote:
On Tue, 07 Jul 2009 14:05:33 -0400, Robert Jacques wrote:
Well, how often does everyone else use bytes?
Cryptography, in my case.
Cool. If you don't mind, what's you're take new rules? (As different use
cases
On Tue, 07 Jul 2009 13:16:14 -0500, Andrei Alexandrescu wrote:
Safe D is concerned with memory safety only.
That's a pity. Maybe it should be renamed to Partially-Safe D, or Safe-ish
D, Memory-Safe D, or ... well you get the point. Could be misleading for
the great unwashed.
--
Derek
On Tue, 07 Jul 2009 21:20:42 +0200, Jérôme M. Berger wrote:
Andrei Alexandrescu wrote:
Jérôme M. Berger wrote:
Andrei Alexandrescu wrote:
Jérôme M. Berger wrote:
Andrei Alexandrescu wrote:
Derek Parnell wrote:
It seems that D would benefit from having a standard syntax format
for
Andrei Alexandrescu wrote:
Nick Sabalausky wrote:
I assume then that you've looked at something lke C#'s
checked/unchecked scheme and someone's (I forget who) idea of
expanding that to something like unchecked(overflow, sign)? What was
wrong with those sorts of things?
An unchecked-based
Robert Jacques wrote:
The new rules are definitely an improvement over C, but they make
byte/ubyte/short/ushort second class citizens, because practically every
assignment requires a cast:
byte a,b,c;
c = cast(byte) a + b;
They've always been second class citizens, as their types keep
bearophile bearophileh...@lycos.com wrote in message
news:h3093m$2mu...@digitalmars.com...
Before adding a feature X let's discuss them, ... If not enough people
like a solution then let's not add it.
Something like that was attempted once before. Andrei didn't like what we
had to say, got
Andrei Alexandrescu seewebsiteforem...@erdani.org wrote in message
news:h30907$2lk...@digitalmars.com...
Nick Sabalausky wrote:
Andrei Alexandrescu seewebsiteforem...@erdani.org wrote in message
news:h2vprn$1t7...@digitalmars.com...
This is a different beast. We simply couldn't devise a
Nick Sabalausky wrote:
Andrei Alexandrescu seewebsiteforem...@erdani.org wrote in message
news:h30907$2lk...@digitalmars.com...
Nick Sabalausky wrote:
Andrei Alexandrescu seewebsiteforem...@erdani.org wrote in message
news:h2vprn$1t7...@digitalmars.com...
This is a different beast. We simply
Nick Sabalausky wrote:
bearophile bearophileh...@lycos.com wrote in message
news:h3093m$2mu...@digitalmars.com...
Before adding a feature X let's discuss them, ... If not enough people
like a solution then let's not add it.
Something like that was attempted once before. Andrei didn't like
Derek Parnell wrote:
Here is where I propose having a signal to the compiler about which
specific variables I'm worried about, and if I code an assignment to one of
these that can potentially overflow, then the compiler must issue a
message.
You can implement that as a library. In fact I
On Tue, 07 Jul 2009 20:48:50 -0400, Andrei Alexandrescu
seewebsiteforem...@erdani.org wrote:
Robert Jacques wrote:
long g;
g = e + f; = d = cast(long) e + cast(long) f;
Works today.
Wrong. I just tested this and what happens today is:
g = cast(long)(e+f);
And this is (I think) correct
Andrei Alexandrescu wrote:
You can implement that as a library. In fact I wanted to do it for
Phobos for a long time. I've discussed it in this group too (to an
unusual consensus), but I forgot the thread's title and stupid
Thunderbird download 500 headers at a time forever even long after
On Tue, 07 Jul 2009 18:26:36 -0700, Walter Bright wrote:
All the messages from the dawn of time are online and available at
http://www.digitalmars.com/d/archives/digitalmars/D/ and are searchable
from the search box in the upper left.
Okaaayy ... I see that this (checking for integer
Walter Bright newshou...@digitalmars.com wrote in message
news:h2s0me$30f...@digitalmars.com...
Something for everyone here.
http://www.digitalmars.com/d/1.0/changelog.html
http://ftp.digitalmars.com/dmd.1.046.zip
http://www.digitalmars.com/d/2.0/changelog.html
On Tue, 07 Jul 2009 21:05:45 -0400, Walter Bright
newshou...@digitalmars.com wrote:
Andrei Alexandrescu wrote:
Robert Jacques wrote:
long g;
g = e + f; = d = cast(long) e + cast(long) f;
Works today.
Wrong. I just tested this and what happens today is:
g = cast(long)(e+f);
And this is
Thanks.
On Tue, 07 Jul 2009 23:01:58 -0400, Walter Bright
newshou...@digitalmars.com wrote:
Robert Jacques wrote:
(Caveat: most 32-bit compilers probably defaulted integer to int,
though 64-bit compilers are probably defaulting integer to long.)
All 32 bit C compilers defaulted int to 32 bits. 64
Robert Jacques wrote:
On Tue, 07 Jul 2009 23:01:58 -0400, Walter Bright
newshou...@digitalmars.com wrote:
Robert Jacques wrote:
(Caveat: most 32-bit compilers probably defaulted integer to int,
though 64-bit compilers are probably defaulting integer to long.)
All 32 bit C compilers defaulted
60 matches
Mail list logo