Lot of small things, details, that are not showstoppers but leave impression of
unfinished business.
First thing that come to my mind is lack of "bud" (build) building support
where you point only to main.d file, and all other modules are imported. I
think that is the ting required to bee in co
On Sun, 2010-11-28 at 15:57 -0500, Roman Ivanov wrote:
[ . . . ]
> AFAIK, LINQ is _not_ SQL embedded into C# or VB. It's a mechanism that
> allows C# to examine expressions (written in C#, as strange as they
> might look) and translate them to SQL (or whatever).
I have no idea how LINQ is realized
Jack wrote:
The post "C#'s greatest mistakes" prompts/begs this post. Have at it,
pick up the ball and run with it, don't be shy. I expect Walter and
Andrei to answer (if Walter and Andrei so dare!) after others' posts have
stopped or stagnated into that cesspool of threaded discussion that is
On Sun, 2010-11-28 at 16:23 -0500, Roman Ivanov wrote:
[ . . . ]
> LINQ _is_ an object API. The query-like syntax is just a misfeature.
or desirable and useful feature!
> But it's not _just_ an object API, because it translates statement into
> expression trees, which can be analyzed and used to
On 11/29/2010 9:06 AM, Jack wrote:
Andrei Alexandrescu wrote:
On 11/28/10 10:19 PM, Jack wrote:
The post "C#'s greatest mistakes" prompts/begs this post. Have at it,
pick up the ball and run with it, don't be shy. I expect Walter and
Andrei to answer (if Walter and Andrei so dare!) after others
Andrei Alexandrescu wrote:
> but some that come to mind are:
`with' ?
-manfred
Manfred_Nowak schrieb:
Andrei Alexandrescu wrote:
but some that come to mind are:
`with' ?
-manfred
What's wrong with "with"?
Am 27.11.2010 04:27, schrieb Andrei Alexandrescu:
http://oredev.org/2010/sessions/c-s-greatest-mistakes
Andrei
my 1+ rated mistake
getting generics into the language BUT no alias or typedef likes
Daniel Gibson wrote:
> What's wrong with "with"?
http://www.digitalmars.com/d/archives/digitalmars/D/with_should_be_deprecat
ed_with_extreme_prejudice_90375.html#N90375
-manfred
The licensing issues with DMD. I get the feeling we would have many
more contributors to the reference compiler and have bugs fixed at a
much faster rate than right now. Walter is already working at 110% of
his abilities, at least that's the impression I get. I think maybe D2
has grown beyond anyon
Manfred_Nowak:
> Daniel Gibson wrote:
>
> > What's wrong with "with"?
>
> http://www.digitalmars.com/d/archives/digitalmars/D/with_should_be_deprecat
> ed_with_extreme_prejudice_90375.html#N90375
Andrei said there:
> I think "with" is a very dangerous feature due to the way it hides
> symbols
Don:
> D has been far too ambitious, given the available resources.
My opinion is a bit different. The Haskell motto is: "Avoid success at all
costs". This because the more complex a language is, the more time it needs to
develop its features in a good way. If a language has too much early succ
bearophile schrieb:
Manfred_Nowak:
Daniel Gibson wrote:
What's wrong with "with"?
http://www.digitalmars.com/d/archives/digitalmars/D/with_should_be_deprecat
ed_with_extreme_prejudice_90375.html#N90375
I see
Andrei said there:
I think "with" is a very dangerous feature due to the way
Andrei:
> * Not fixing switch
Walter has vaguely accepted to somehow fix this, requiring a flow control for
each case statement (but other people immediately have asked to special case
this again).
> * scope variables
Fixed?
> * delete (generally: an incompletely thought-out approach to ga
"with" is almost convenient in some cases, but I have to admit every
time I'm inside a with block I'm never absolutely sure which variables
I'm accessing. There's still that situation where I might think I'm
accessing a member variable, but it turns out the member variable
doesn't exist and there j
On 11/29/10, bearophile wrote:
>> * Template pattern matching is incomplete
>
> I don't understand this, please explain better. But I think the syntax of
> is() is awful and I'd like to shoot it.
>
+1. I'd prefer if we had a constraint block of some kind. I mean we
already have in/out contracts w
On 11/29/10, bearophile wrote:
>> * Template pattern matching is incomplete
>
> I don't understand this, please explain better. But I think the syntax of
> is() is awful and I'd like to shoot it.
>
+1. I'd prefer if we had a constraint block of some kind. I mean we
already have in/out contracts w
Sorry for the repost!
On 11/29/10, Andrej Mitrovic wrote:
> On 11/29/10, bearophile wrote:
>>> * Template pattern matching is incomplete
>>
>> I don't understand this, please explain better. But I think the syntax of
>> is() is awful and I'd like to shoot it.
>>
>
> +1. I'd prefer if we had a co
On Sat, 27 Nov 2010 10:59:42 -0500, Torarin wrote:
2010/11/27 Andrei Alexandrescu :
We use template constraints for that kind of stuff.
Andrei
Yes, and that's great, but is there a way to check whether a template
argument matches a defined interface?
We have stuff like isInputRange!R.
I
On Sat, 27 Nov 2010 21:49:03 +0200, BLS wrote:
On 27/11/2010 04:27, Andrei Alexandrescu wrote:
http://oredev.org/2010/sessions/c-s-greatest-mistakes
Andrei
Frankly said, I am a bit nagged by your overoptimistic D view.
From my point of view it is opportune to encourage people to use D2 for
On Sun, 28 Nov 2010 23:19:44 -0500, Jack wrote:
The post "C#'s greatest mistakes" prompts/begs this post. Have at it,
pick up the ball and run with it, don't be shy. I expect Walter and
Andrei to answer (if Walter and Andrei so dare!) after others' posts have
stopped or stagnated into that cess
What I can see now, mistakes are mostly syntactical like switch, auto,
const, rebindable, array ops, full slice, arbitrary-code-contracts
instead of single bool expression. Choice for round braces for templates
leads to slightly unreadable template code: foo!(params params)(yet more
params)
On Fri, 26 Nov 2010 14:50:27 -0500, Bruno Medeiros
wrote:
On 09/11/2010 12:42, Steven Schveighoffer wrote:
On Mon, 08 Nov 2010 21:29:42 -0500, Jesse Phillips
wrote:
Well, if you can come up with a good definition for what "increasing
the size of a class" would do, then maybe it should be
On Sat, 20 Nov 2010 09:21:04 -0500, Peter Alexander
wrote:
D does not support logical const due to the weak guarantees that it
provides.
So, without logical const, how are D users supposed to provide lazy
evaluation and memoization in their interfaces, given that the interface
should *
On Sun, 28 Nov 2010 16:27:20 -0500, Walter Bright
wrote:
Peter Alexander wrote:
Solves the problem, but now I've created a new one: getInverse now has
complete write access to my matrix, so when I do something as harmless
as:
Matrix inv = getInverse(myMatrix);
This innocent call has no
On Mon, 29 Nov 2010 10:13:01 -0500, Steven Schveighoffer
wrote:
If you are going to argue this case, please do not use C++ as a straw
man, it's not the same as D.
Reading more of the posts in this thread, it appears many are using C++ as
the straw man in their case *for* mutable, so I u
Surely I'm not the only person that finds something *incredibly* wrong
with this!?
Sorry but I see nothing but the misconception of const-correctness with
the given example.
I hope you are aware of what you are asking.
For your particular example:
First you started by class, you should use
I am technically worse off, just not from the compilers point of view.
I see your point about C++ const being a convention, but that doesn't
change the fact that it is still very useful, even if it useless for the
compiler. If I give some const object to a function:
void render(const GameOb
On 11/29/10 3:42 AM, Don wrote:
Jack wrote:
The post "C#'s greatest mistakes" prompts/begs this post. Have at it,
pick up the ball and run with it, don't be shy. I expect Walter and
Andrei to answer (if Walter and Andrei so dare!) after others' posts
have stopped or stagnated into that cesspool
On 11/29/10 5:34 AM, Manfred_Nowak wrote:
Daniel Gibson wrote:
What's wrong with "with"?
http://www.digitalmars.com/d/archives/digitalmars/D/with_should_be_deprecat
ed_with_extreme_prejudice_90375.html#N90375
-manfred
Walter and I came to an understanding regarding symbol visibility that
On 11/29/10 5:48 AM, Andrej Mitrovic wrote:
The licensing issues with DMD. I get the feeling we would have many
more contributors to the reference compiler and have bugs fixed at a
much faster rate than right now. Walter is already working at 110% of
his abilities, at least that's the impression
On 11/29/10 6:18 AM, bearophile wrote:
Andrei:
* Template pattern matching is incomplete
I don't understand this, please explain better. But I think the syntax of is()
is awful and I'd like to shoot it.
is() should do full tree unification on the query type and the pattern.
It currently do
"Bane" wrote in message
news:icvscq$1ep...@digitalmars.com...
> Lot of small things, details, that are not showstoppers but leave
> impression of unfinished business.
>
> First thing that come to my mind is lack of "bud" (build) building support
> where you point only to main.d file, and all ot
"Steven Schveighoffer" wrote in message
news:op.vmxqi4kmeav...@steve-laptop...
> On Sun, 28 Nov 2010 23:19:44 -0500, Jack wrote:
>
>> The post "C#'s greatest mistakes" prompts/begs this post. Have at it,
>> pick up the ball and run with it, don't be shy. I expect Walter and
>> Andrei to answer (
== Quote from Steven Schveighoffer (schvei...@yahoo.com)'s article
> On Wed, 17 Nov 2010 12:09:11 -0500, dsimcha wrote:
> > == Quote from Steven Schveighoffer (schvei...@yahoo.com)'s article
> >> The issue is that if you append to such an array and it adds more pages
> >> in
> >> place, the block
On 11/29/10 8:56 AM, Steven Schveighoffer wrote:
On Sat, 20 Nov 2010 09:21:04 -0500, Peter Alexander
wrote:
D does not support logical const due to the weak guarantees that it
provides.
So, without logical const, how are D users supposed to provide lazy
evaluation and memoization in their int
On 26/11/2010 16:56, Andrei Alexandrescu wrote:
On 11/26/10 9:30 AM, Bruno Medeiros wrote:
On 03/11/2010 20:33, Andrei Alexandrescu wrote:
On 11/3/10 7:07 AM, zhang wrote:
This code belown can be compiled with DMD 2.050. However, it throws an
error message:
core.exception.HiddenFuncError: Hidd
On Mon, 29 Nov 2010 10:58:05 -0500, dsimcha wrote:
== Quote from Steven Schveighoffer (schvei...@yahoo.com)'s article
On Wed, 17 Nov 2010 12:09:11 -0500, dsimcha wrote:
> == Quote from Steven Schveighoffer (schvei...@yahoo.com)'s article
>> The issue is that if you append to such an array and
On Mon, 29 Nov 2010 10:54:04 -0500, Nick Sabalausky wrote:
"Steven Schveighoffer" wrote in message
news:op.vmxqi4kmeav...@steve-laptop...
On Sun, 28 Nov 2010 23:19:44 -0500, Jack wrote:
The post "C#'s greatest mistakes" prompts/begs this post. Have at it,
pick up the ball and run with it,
On 11/29/10 10:12 AM, Steven Schveighoffer wrote:
On Mon, 29 Nov 2010 10:54:04 -0500, Nick Sabalausky wrote:
"Steven Schveighoffer" wrote in message
news:op.vmxqi4kmeav...@steve-laptop...
On Sun, 28 Nov 2010 23:19:44 -0500, Jack wrote:
The post "C#'s greatest mistakes" prompts/begs this p
On Mon, 29 Nov 2010 10:56:14 -0500, Andrei Alexandrescu
wrote:
On 11/29/10 8:56 AM, Steven Schveighoffer wrote:
On Sat, 20 Nov 2010 09:21:04 -0500, Peter Alexander
wrote:
D does not support logical const due to the weak guarantees that it
provides.
So, without logical const, how are D us
On 26/11/2010 17:54, Bruno Medeiros wrote:
On 26/11/2010 17:28, Bruno Medeiros wrote:
And I agree with that, and because of that I'm suprised and curious to
understand why Hoare mentioned (in the abstract on the link posted
originally), that null pointers have caused "innumerable vulnerabilitie
== Quote from Steven Schveighoffer (schvei...@yahoo.com)'s article
> On Mon, 29 Nov 2010 10:58:05 -0500, dsimcha wrote:
> > == Quote from Steven Schveighoffer (schvei...@yahoo.com)'s article
> >> On Wed, 17 Nov 2010 12:09:11 -0500, dsimcha wrote:
> >> > == Quote from Steven Schveighoffer (schvei.
On 26/11/2010 19:20, Daniel Gibson wrote:
So, going back, is it correct to say that an NPE bug on its own is not
enough to allow arbitrary code execution, but that other
vulnerabilities are necessary?
I don't think it's correct: You may have a "bad" user on your system
(e.g. pseudo-public ser
== Quote from Andrei Alexandrescu (seewebsiteforem...@erdani.org)'s article
> Ultimately I believe we need to make Rebindable palatable. That would
> have the nice side effect of enabling other proxy types.
> Andrei
I've asked before and I'll ask again, what's still wrong with Rebindable? A
bun
On 2010-11-29 11:24:56 -0500, "Steven Schveighoffer"
said:
On Mon, 29 Nov 2010 10:56:14 -0500, Andrei Alexandrescu
wrote:
In fact it's possible to provide logical const with guarantees. You
need a construct that keeps together a bool, a pure
function/delegate/method, and a value, and w
On 2010-11-29 11:19:29 -0500, Andrei Alexandrescu
said:
Syntax is the main issue in implementing this feature. Due to the
implicit nature of reference semantics for classes, there was no syntax
to distinguish between the head and the tail when qualifying.
FWIW I just thought of this syntax.
On Mon, 29 Nov 2010 11:19:29 -0500, Andrei Alexandrescu
wrote:
On 11/29/10 10:12 AM, Steven Schveighoffer wrote:
On Mon, 29 Nov 2010 10:54:04 -0500, Nick Sabalausky wrote:
"Steven Schveighoffer" wrote in message
news:op.vmxqi4kmeav...@steve-laptop...
On Sun, 28 Nov 2010 23:19:44 -0500,
On 27/11/2010 03:29, Rainer Deyke wrote:
On 11/26/2010 10:28, Bruno Medeiros wrote:
Yes, Walter's statement that it is impossible for a null pointer to
cause a security vulnerability is (likely) incorrect.
But his point at large, considering the discussion that preceded the
comment, was that nul
On 29/11/2010 14:13, Steven Schveighoffer wrote:
On Fri, 26 Nov 2010 14:50:27 -0500, Bruno Medeiros
wrote:
On 09/11/2010 12:42, Steven Schveighoffer wrote:
On Mon, 08 Nov 2010 21:29:42 -0500, Jesse Phillips
wrote:
Well, if you can come up with a good definition for what "increasing
the siz
On 06/11/2010 01:32, Don wrote:
Pure functions are allowed to read immutable global variables.
Currently, this even includes globals which are initialized from inside
'static this()'.
Here's an example of how this can be a problem:
immutable int unstable;
pure int buggy() { return unstable; }
On 11/29/10 10:54 AM, Michel Fortin wrote:
On 2010-11-29 11:19:29 -0500, Andrei Alexandrescu
said:
Syntax is the main issue in implementing this feature. Due to the
implicit nature of reference semantics for classes, there was no
syntax to distinguish between the head and the tail when qualify
On 11/29/10 10:24 AM, Steven Schveighoffer wrote:
This only solves the caching issue (which I agree is a large issue).
There are other cases where you want a mutable pointer to other data
that the object does not own. Such as a widget having a pointer to its
window. Assuming that window draw rout
On 11/29/10 10:59 AM, Steven Schveighoffer wrote:
On Mon, 29 Nov 2010 11:19:29 -0500, Andrei Alexandrescu
wrote:
Ultimately I believe we need to make Rebindable palatable. That would
have the nice side effect of enabling other proxy types.
I think if we get to that point, D will be much more
On 10/11/2010 02:53, Eric Poggel wrote:
On 11/9/2010 5:27 AM, thank you oldtimer wrote:
ankh, anonymous troll, another lurker, anton smith, arnoldsschwartz,
bjarne yesterday, blaise pascal, cal, chmod+x, crap, darth tango,
domino, ellis peters, foobar, gareth charnock, gcc-lurker,
girlprogrammer
On 07/11/2010 20:48, Stewart Gordon wrote:
On 06/11/2010 23:11, bioinfornatics wrote:
hello,
I have a question (i would like understand), they are many important
people of D community who do not want go to D2, why ?
thanks for answer
Sick of waiting for D1 to be finished.
So many differences
On Mon, 29 Nov 2010 11:44:23 -0500, dsimcha wrote:
== Quote from Steven Schveighoffer (schvei...@yahoo.com)'s article
On Mon, 29 Nov 2010 10:58:05 -0500, dsimcha wrote:
> == Quote from Steven Schveighoffer (schvei...@yahoo.com)'s article
>> On Wed, 17 Nov 2010 12:09:11 -0500, dsimcha
wrote
On 2010-11-29 13:08:54 -0500, Andrei Alexandrescu
said:
On 11/29/10 10:54 AM, Michel Fortin wrote:
The biggest problem I see is with generic programming. Say I pass
Rebindable!(const C) as a template argument, then the template wants to
make it const: should it become const(Rebindable!(const
On Mon, 29 Nov 2010 13:06:17 -0500, Andrei Alexandrescu
wrote:
On 11/29/10 10:24 AM, Steven Schveighoffer wrote:
This only solves the caching issue (which I agree is a large issue).
There are other cases where you want a mutable pointer to other data
that the object does not own. Such as a w
On 11/29/10 12:56 PM, Michel Fortin wrote:
On 2010-11-29 13:08:54 -0500, Andrei Alexandrescu
said:
On 11/29/10 10:54 AM, Michel Fortin wrote:
The biggest problem I see is with generic programming. Say I pass
Rebindable!(const C) as a template argument, then the template wants to
make it const
On Mon, 29 Nov 2010 11:53:27 -0500, Michel Fortin
wrote:
On 2010-11-29 11:24:56 -0500, "Steven Schveighoffer"
said:
On Mon, 29 Nov 2010 10:56:14 -0500, Andrei Alexandrescu
wrote:
In fact it's possible to provide logical const with guarantees. You
need a construct that keeps toget
On Mon, 29 Nov 2010 13:10:14 -0500, Andrei Alexandrescu
wrote:
On 11/29/10 10:59 AM, Steven Schveighoffer wrote:
On Mon, 29 Nov 2010 11:19:29 -0500, Andrei Alexandrescu
wrote:
Ultimately I believe we need to make Rebindable palatable. That would
have the nice side effect of enabling other
== Quote from Steven Schveighoffer (schvei...@yahoo.com)'s article
> > 1. Due to obscure implementation details, it is **not** safe to append
> > to a
> > non-shared array even if you synchronize manually.
> I think you meant __gshared, not non-shared. It's perfectly safe to
> append to non-share
Steven Schveighoffer wrote:
In fact, "logical
constness" is a fraud anyway because the underlying data isn't
constant at all, one is completely relying on convention. There's
nothing at all preventing a supposedly logical-const-correct function
from returning a different value every time it is
On 11/29/10 1:09 PM, Steven Schveighoffer wrote:
On Mon, 29 Nov 2010 13:10:14 -0500, Andrei Alexandrescu
wrote:
On 11/29/10 10:59 AM, Steven Schveighoffer wrote:
On Mon, 29 Nov 2010 11:19:29 -0500, Andrei Alexandrescu
wrote:
Ultimately I believe we need to make Rebindable palatable. That wo
On Mon, 29 Nov 2010 11:52:31 -0500, dsimcha wrote:
== Quote from Andrei Alexandrescu (seewebsiteforem...@erdani.org)'s
article
Ultimately I believe we need to make Rebindable palatable. That would
have the nice side effect of enabling other proxy types.
Andrei
I've asked before and I'll a
On 11/29/10 1:35 PM, Steven Schveighoffer wrote:
On Mon, 29 Nov 2010 11:52:31 -0500, dsimcha wrote:
== Quote from Andrei Alexandrescu (seewebsiteforem...@erdani.org)'s
article
Ultimately I believe we need to make Rebindable palatable. That would
have the nice side effect of enabling other pr
On Mon, 29 Nov 2010 14:33:48 -0500, Walter Bright
wrote:
Steven Schveighoffer wrote:
In fact, "logical constness" is a fraud anyway because the underlying
data isn't constant at all, one is completely relying on convention.
There's nothing at all preventing a supposedly logical-const-corr
On 11/29/10 1:38 PM, Andrei Alexandrescu wrote:
On 11/29/10 1:35 PM, Steven Schveighoffer wrote:
On Mon, 29 Nov 2010 11:52:31 -0500, dsimcha wrote:
== Quote from Andrei Alexandrescu (seewebsiteforem...@erdani.org)'s
article
Ultimately I believe we need to make Rebindable palatable. That wou
On Mon, 29 Nov 2010 14:38:40 -0500, Andrei Alexandrescu
wrote:
On 11/29/10 1:35 PM, Steven Schveighoffer wrote:
On Mon, 29 Nov 2010 11:52:31 -0500, dsimcha wrote:
== Quote from Andrei Alexandrescu (seewebsiteforem...@erdani.org)'s
article
Ultimately I believe we need to make Rebindable
Steven Schveighoffer wrote:
But in any case, const (even the non-logical variety) does not guarantee
purity. Only pure functions do that (always return the same value for
the same input)
Right, but C++ doesn't have purity either. I was trying to make the point that
C++ does not have a "logic
On 11/29/10 1:49 PM, Steven Schveighoffer wrote:
On Mon, 29 Nov 2010 14:38:40 -0500, Andrei Alexandrescu
wrote:
On 11/29/10 1:35 PM, Steven Schveighoffer wrote:
On Mon, 29 Nov 2010 11:52:31 -0500, dsimcha wrote:
== Quote from Andrei Alexandrescu (seewebsiteforem...@erdani.org)'s
article
On Mon, 29 Nov 2010 14:52:54 -0500, Walter Bright
wrote:
Steven Schveighoffer wrote:
But in any case, const (even the non-logical variety) does not
guarantee purity. Only pure functions do that (always return the same
value for the same input)
Right, but C++ doesn't have purity either.
so Wrote:
> > What I can see now, mistakes are mostly syntactical like switch, auto,
> > const, rebindable, array ops, full slice, arbitrary-code-contracts
> > instead of single bool expression. Choice for round braces for templates
> > leads to slightly unreadable template code: foo!(params
On Sunday, November 28, 2010 04:43:47 Jérôme M. Berger wrote:
> Jonathan M Davis wrote:
> > A clearer way to create such template constraints would definitely be
> > nice. But aside from the fact that I'd absolutely hate to see interfaces
> > be conflated with template constraints in this manner, y
Steven Schveighoffer Wrote:
> lack of tail-const/immutable for classes.
>
> And no, Rebindable doesn't cut it.
As I understand, it's primarily issue for collections?
On Monday, November 29, 2010 11:03:27 Andrei Alexandrescu wrote:
> On 11/29/10 12:56 PM, Michel Fortin wrote:
> > On 2010-11-29 13:08:54 -0500, Andrei Alexandrescu
> >
> > said:
> >> On 11/29/10 10:54 AM, Michel Fortin wrote:
> >>> The biggest problem I see is with generic programming. Say I pass
On Monday, November 29, 2010 12:48:45 Kagamin wrote:
> Steven Schveighoffer Wrote:
> > lack of tail-const/immutable for classes.
> >
> > And no, Rebindable doesn't cut it.
>
> As I understand, it's primarily issue for collections?
The lack of tail-const is a particularly big problem for handling
Steven Schveighoffer Wrote:
> My favorite in recent times is:
>
> @tail const(C) tailconst;
Tail const is a type constructor, but I don't think that annotations should
evolve that far.
Jonathan M Davis:
> D has the best of both worlds (or at least will, once bug
> http://d.puremagic.com/issues/show_bug.cgi?id=4423 has been fixed).
On enums I hope to see this this tidying enhancement request fulfilled, vote!
:-)
http://d.puremagic.com/issues/show_bug.cgi?id=3999
Bye,
bearophi
Andrej Mitrovic Wrote:
> The licensing issues with DMD. I get the feeling we would have many
> more contributors to the reference compiler and have bugs fixed at a
> much faster rate than right now. Walter is already working at 110% of
> his abilities, at least that's the impression I get. I think
Steven Schveighoffer wrote:
Having a logical const feature in D would not be a convention, it would
be enforced, as much as const is enforced. I don't understand why
issues with C++ const or C++'s mutable feature makes any correlations on
how a D logical const system would fare. C++ const is
Andrei Alexandrescu wrote:
Syntax is the main issue in implementing this feature. Due to the
implicit nature of reference semantics for classes, there was no syntax
to distinguish between the head and the tail when qualifying.
FWIW I just thought of this syntax. It might work but it's not intu
On Mon, 29 Nov 2010 16:02:18 -0500, Walter Bright
wrote:
Andrei Alexandrescu wrote:
Syntax is the main issue in implementing this feature. Due to the
implicit nature of reference semantics for classes, there was no syntax
to distinguish between the head and the tail when qualifying.
FWIW
On 11/29/10 3:02 PM, Walter Bright wrote:
Andrei Alexandrescu wrote:
Syntax is the main issue in implementing this feature. Due to the
implicit nature of reference semantics for classes, there was no
syntax to distinguish between the head and the tail when qualifying.
FWIW I just thought of thi
On Mon, 29 Nov 2010 15:53:51 -0500, Jonathan M Davis
wrote:
On Monday, November 29, 2010 12:48:45 Kagamin wrote:
Steven Schveighoffer Wrote:
> lack of tail-const/immutable for classes.
>
> And no, Rebindable doesn't cut it.
As I understand, it's primarily issue for collections?
The lack o
On Mon, 29 Nov 2010 15:55:10 -0500, Kagamin wrote:
Steven Schveighoffer Wrote:
My favorite in recent times is:
@tail const(C) tailconst;
Tail const is a type constructor, but I don't think that annotations
should evolve that far.
What I liked about that is it is orthogonal to the const
Andrei Alexandrescu Wrote:
> On 11/29/10 5:48 AM, Andrej Mitrovic wrote:
> > The licensing issues with DMD. I get the feeling we would have many
> > more contributors to the reference compiler and have bugs fixed at a
> > much faster rate than right now. Walter is already working at 110% of
> > hi
On Mon, 29 Nov 2010 15:58:10 -0500, Walter Bright
wrote:
Steven Schveighoffer wrote:
Having a logical const feature in D would not be a convention, it would
be enforced, as much as const is enforced. I don't understand why
issues with C++ const or C++'s mutable feature makes any correlat
Walter Bright Wrote:
> Syntax was not the issue. Back when we tried hard to make this work, there
> were
> many syntaxes proposed for it. The issue is the semantic conflation between a
> reference and what it refers to.
O.o
I don't believe, there's even single person in this thread, who will c
D has removed some cases of bug-prone C syntax, like:
int main() {
int* ptr1, ptr2;
return 0;
}
But D needs to avoid introducing new ones. In D2 there is a shortcut to
instantiate templates, but it must not cause ambiguity for the eyes of the
programmer that reads the code (the point i
Daniel Gibson wrote:
> "with" shouldn't be much of a problem anymore.
import std.stdio;
struct X{ int a, b, c;}
struct Y{ int a, b;}
void main(){
X x;
Y y;
with( x){
c= 2;
with( y){
c= 1;
}
}
writeln( x.c);
}
Do you see the not "much of a problem"?
-manfred
On 11/29/2010 08:58 PM, Steven Schveighoffer wrote:
Most likely not. How do you say that the 'draw' function switches the
widget to a different parameterized type? With const, you can just slap
a const on the end of the function.
Here is some example of what I mean:
class Widget
{
mutable
On 29/11/10 3:19 PM, so wrote:
Second why do mark something const if it is not, this is a wrong
approach even in C++ which provides explicit "mutable".
It is logical const. It is the correct approach in C++.
How are you going to do caching anyways, if static array is not the case?
struct mat
On 29/11/10 8:58 PM, Walter Bright wrote:
Because people coming from C++ ask "why not do it like C++'s?"
No one is asking this.
Andrej Mitrovic wrote:
D's slogan should be "There's a keyword for that." :p
And here I thought we only needed 'static'...
--
Simen
On 20/11/2010 05:31, Walter Bright wrote:
Stewart Gordon wrote:
On 12/11/2010 09:53, Andrei Alexandrescu wrote:
Well put me on board then. Walter, please don't forget to tweak the
associativity rules: var ~ " literal " ~ " literal " concatenates
literals first.
You mean make ~ right-associat
On 11/29/2010 11:22 PM, Max Samukha wrote:
On 11/29/2010 08:58 PM, Steven Schveighoffer wrote:
Most likely not. How do you say that the 'draw' function switches the
widget to a different parameterized type? With const, you can just slap
a const on the end of the function.
Here is some example o
On Mon, 29 Nov 2010 16:22:55 -0500, Max Samukha
wrote:
On 11/29/2010 08:58 PM, Steven Schveighoffer wrote:
Most likely not. How do you say that the 'draw' function switches the
widget to a different parameterized type? With const, you can just slap
a const on the end of the function.
Here
On 11/29/10 3:38 PM, Bruno Medeiros wrote:
On 20/11/2010 05:31, Walter Bright wrote:
Stewart Gordon wrote:
On 12/11/2010 09:53, Andrei Alexandrescu wrote:
Well put me on board then. Walter, please don't forget to tweak the
associativity rules: var ~ " literal " ~ " literal " concatenates
lite
1 - 100 of 142 matches
Mail list logo