December 18, 2011
Hi all,

 I want to ask you about D future, i mean next big iteration of D and propose some new feature, agent-based programming. Currently, after introducing C++11 i see the only advantages of D over C++11 except syntax sugare is  garbage collector and modules.

 I recentrly attended student school (workshop) on multi-agent systems (MAS)and self-organizing sysetems. I was really impressed and thought that this probably is the silver bullet which Brucks declared to be absent. I mean agent-based programming as foundation of self-organzing systems. If you are interested you can find a lot of information by googling.

 So I would like to get your feedback to introduce new paradigm, paradigm of agent programming into D.

 Actually, I'm not deep into MAS, but as far as i know it's just autonomous class, i.e. class that has it's own independent context of execution that can communicate with other parties (agents) and can affect on environment if any (like ant).

 So it would be nice to have this in language core/library.

 There is erlang that already satisfied all requirements (as far as i know) of MAS language. So the question is does D need to take this paradigm? - Or concentrate on its current paradigms? The only advatnage ovder erlang i see is that D propose itself as embedded programming language which erlang do not satisfy (am i right?).

 So i need your feedback on the following:
	(i)   do you think that D needs to adsorb agent-programming paradigm
	(ii)  can it benefit D comparing to other modern languages

-- 
BR, Ruslan Mullakhmetov

December 18, 2011
On 12/18/2011 01:09 AM, Ruslan Mullakhmetov wrote:
> Hi all,
>
> I want to ask you about D future, i mean next big iteration of D and
> propose some new feature, agent-based programming. Currently, after
> introducing C++11 i see the only advantages of D over C++11 except
> syntax sugare is garbage collector and modules.
>

C++11 does not change the relation between D and C++ a lot. Why do you think it does?

> I recentrly attended student school (workshop) on multi-agent systems
> (MAS)and self-organizing sysetems. I was really impressed and thought
> that this probably is the silver bullet which Brucks declared to be
> absent. I mean agent-based programming as foundation of self-organzing
> systems. If you are interested you can find a lot of information by
> googling.
>
> So I would like to get your feedback to introduce new paradigm, paradigm
> of agent programming into D.
>
> Actually, I'm not deep into MAS, but as far as i know it's just
> autonomous class, i.e. class that has it's own independent context of
> execution that can communicate with other parties (agents) and can
> affect on environment if any (like ant).
>
> So it would be nice to have this in language core/library.
>
> There is erlang that already satisfied all requirements (as far as i
> know) of MAS language. So the question is does D need to take this
> paradigm? - Or concentrate on its current paradigms? The only advatnage
> ovder erlang i see is that D propose itself as embedded programming
> language which erlang do not satisfy (am i right?).
>
> So i need your feedback on the following:
> (i) do you think that D needs to adsorb agent-programming paradigm

The language does not have to be changed to get that to work.

> (ii) can it benefit D

Yes.

> comparing to other modern languages

IMO that is not a very important question. It is not a contest.

December 18, 2011
Ruslan Mullakhmetov Wrote:

> Currently, after introducing C++11 i see the only advantages of D over C++11 except syntax sugare is  garbage collector and modules.

So you are saying that sane templates, range based standard library and concurrency improvements (thread local variables, immutable, message passing) are all just syntactic sugar?

December 18, 2011
On 12/18/2011 02:42 AM, a wrote:
> Ruslan Mullakhmetov Wrote:
>
>> Currently, after
>> introducing C++11 i see the only advantages of D over C++11 except
>> syntax sugare is  garbage collector and modules.
>
> So you are saying that sane templates, range based standard library and concurrency improvements (thread local variables, immutable, message passing) are all just syntactic sugar?
>

And you didn't even mention CTFE and code generation yet.
December 18, 2011
On Sunday, December 18, 2011 04:09:21 Ruslan Mullakhmetov wrote:
>   I want to ask you about D future

It will be years before we seriously start looking at D3, and while there are ideas for what we might like to do with it, it's far too early to say what's likely to happen with it. D2 needs to be fully stabilized and be in general use for a while before we really look at expanding it into D3. We really need to work at making D2 a success before we worry about where we're going next. Also, many of the best changes to D3 won't be evident until D2 has been used enough for its problems to become evident. D1 and D2 manage to improve on C++'s problems as well as they do precisely because we know what they are. We don't really know what D2's primary problems are yet, and that will take time.

Also, while D3 may be years off, it could be that after D2 has stabilized more, we'll add new features that are backwards compatible. So, just because D3 is years off does not necessarily mean that D2 is static. In addition, many things can be done in libraries without needing to add anything to the language, so what you can do with D2 will continue to improve, even if the language itself doesn't change much.

Regardless, the main focus right now is in stabilizing dmd and fleshing out the standard library, not in creating a new version of D with new features. It's too early for that.

- Jonathan M Davis
December 18, 2011
Le 18/12/11 02:53, Timon Gehr a écrit :
> On 12/18/2011 02:42 AM, a wrote:
>> Ruslan Mullakhmetov Wrote:
>>
>>> Currently, after
>>> introducing C++11 i see the only advantages of D over C++11 except
>>> syntax sugare is garbage collector and modules.
>>
>> So you are saying that sane templates, range based standard library
>> and concurrency improvements (thread local variables, immutable,
>> message passing) are all just syntactic sugar?
>>
>
> And you didn't even mention CTFE and code generation yet.

Arrays manipulation !
December 18, 2011
On 2011-12-18 00:56:33 +0000, Timon Gehr said:

> C++11 does not change the relation between D and C++ a lot. Why do you think it does?

Because it incorporates many features D declared to be unique to it over C++ like
  - thread local variables
  - explicit concurrency model
  - type deduction
  - variadic templates
  - generalized constant expressions

Some comparison is made at http://d-programming-language.org/cpp0x.html

> The language does not have to be changed to get that to work.

The C language doesn't have to be changed to get OOP working. There are libraries written in plain C satisfying all requirements of OOP, e.g. libav. Nevertheless C++ was born.

So, what do i propose. To get it explicit in language and working out of the box, like in Erlang. the only benefit over Erlang i currently see that D is much more friendly for newcomers from C-like camp. The another is possibility for embedded programming. I was surprised that there are attempts to use MAS at embedded programming e.g. robotics where different controlers are autonomous and communicate with each others.

> 
>> comparing to other modern languages
> 
> IMO that is not a very important question. It is not a contest.

 I thin that this is exactly context. I try to explain. D has reputation of marginal language with no concrete niche. For embedded programming C++ and rather plain C is used. For high level programming Java/C# are good enough. For distributed programming - Erlang. For scientific - Matlab, python, fortran, C. When i tell somebody about D the first question i get except community, maturity and stability is where it can be used. Where it gives true advantage. And i can not answer.
 So i propose to introduce new paradigm, despite of it is _not_ technical problem. it like ajax where combination of parts gave result greater then sum of parts.
 One may consider it as marketing trick to attract attention to D.

> On 12/18/2011 01:09 AM, Ruslan Mullakhmetov wrote:
>> Hi all,
>> 
>> I want to ask you about D future, i mean next big iteration of D and
>> propose some new feature, agent-based programming. Currently, after
>> introducing C++11 i see the only advantages of D over C++11 except
>> syntax sugare is garbage collector and modules.
>> 
> 
> C++11 does not change the relation between D and C++ a lot. Why do you think it does?
> 
>> I recentrly attended student school (workshop) on multi-agent systems
>> (MAS)and self-organizing sysetems. I was really impressed and thought
>> that this probably is the silver bullet which Brucks declared to be
>> absent. I mean agent-based programming as foundation of self-organzing
>> systems. If you are interested you can find a lot of information by
>> googling.
>> 
>> So I would like to get your feedback to introduce new paradigm, paradigm
>> of agent programming into D.
>> 
>> Actually, I'm not deep into MAS, but as far as i know it's just
>> autonomous class, i.e. class that has it's own independent context of
>> execution that can communicate with other parties (agents) and can
>> affect on environment if any (like ant).
>> 
>> So it would be nice to have this in language core/library.
>> 
>> There is erlang that already satisfied all requirements (as far as i
>> know) of MAS language. So the question is does D need to take this
>> paradigm? - Or concentrate on its current paradigms? The only advatnage
>> ovder erlang i see is that D propose itself as embedded programming
>> language which erlang do not satisfy (am i right?).
>> 
>> So i need your feedback on the following:
>> (i) do you think that D needs to adsorb agent-programming paradigm
> 
> The language does not have to be changed to get that to work.
> 
>> (ii) can it benefit D
> 
> Yes.
> 
>> comparing to other modern languages
> 
> IMO that is not a very important question. It is not a contest.


-- 
BR, Ruslan Mullakhmetov

December 18, 2011
 I do not want to make a flame over D vs C++11.

 I answered else thread on some differences of C++11 vs D, but i agree with you that i was a little bit in a hurry.

 After rechecking i remembered constraints, static compilation (static if), contract programming, functional programming. perhaps i skipped something.

 For those features you mentioned:
   - templates are know quite sane, but D still outperforms it. The question is how many people would benefit from this difference.
   - thread local variables: thread local storage (though not default)
   - message passing implemented via libraries: boost.task?
   - immutables are only needed for functional programming which in turn necessary for parallelizing / distributed applications / formal verification. I don't know, does D (compiler) utilize it?

 Once again, i'm not trying to make a holywar. I'm D lover myself. But a lot of people do not consider this benefits of D enough to shift to it as for my opinion and experience.


On 2011-12-18 01:53:14 +0000, Timon Gehr said:

> On 12/18/2011 02:42 AM, a wrote:
>> Ruslan Mullakhmetov Wrote:
>> 
>>> Currently, after
>>> introducing C++11 i see the only advantages of D over C++11 except
>>> syntax sugare is  garbage collector and modules.
>> 
>> So you are saying that sane templates, range based standard library and concurrency improvements (thread local variables, immutable, message passing) are all just syntactic sugar?
>> 
> 
> And you didn't even mention CTFE and code generation yet.


-- 
BR, Ruslan Mullakhmetov

December 18, 2011
>> It will be years before we seriously start looking at D3

 Absolutely. Just wanted to share with my thoughts.

 When i wrote to NG i do not intend to say "Let do it right know", instead wanted to say "When D3 would be considered..."

 Any good movement as i hope D is ought to have some global view and global goals. I think, new paradigm would benefit D.

 Also as already mentioned else thread this can be used like marketing trick.

On 2011-12-18 02:26:51 +0000, Jonathan M Davis said:

> On Sunday, December 18, 2011 04:09:21 Ruslan Mullakhmetov wrote:
>> I want to ask you about D future
> 
> It will be years before we seriously start looking at D3, and while there are
> ideas for what we might like to do with it, it's far too early to say what's
> likely to happen with it. D2 needs to be fully stabilized and be in general
> use for a while before we really look at expanding it into D3. We really need
> to work at making D2 a success before we worry about where we're going next.
> Also, many of the best changes to D3 won't be evident until D2 has been used
> enough for its problems to become evident. D1 and D2 manage to improve on
> C++'s problems as well as they do precisely because we know what they are. We
> don't really know what D2's primary problems are yet, and that will take time.
> 
> Also, while D3 may be years off, it could be that after D2 has stabilized more,
> we'll add new features that are backwards compatible. So, just because D3 is
> years off does not necessarily mean that D2 is static. In addition, many things
> can be done in libraries without needing to add anything to the language, so
> what you can do with D2 will continue to improve, even if the language itself
> doesn't change much.
> 
> Regardless, the main focus right now is in stabilizing dmd and fleshing out the
> standard library, not in creating a new version of D with new features. It's
> too early for that.
> 
> - Jonathan M Davis


-- 
BR, Ruslan Mullakhmetov

December 18, 2011
Le 18/12/2011 12:13, Ruslan Mullakhmetov a écrit :
>  I do not want to make a flame over D vs C++11.
> 
> ...
>  Once again, i'm not trying to make a holywar. I'm D lover myself. But a
> lot of people do not consider this benefits of D enough to shift to it
> as for my opinion and experience.
> 
> 

These people will not change their mind whatever you throw at them. For them, it's a matter of religion, not a matter of comparison. We shouldn't bother pleasing such or such group of people.

BTW, your comparison with Erlang misses one crucial point: performance. A part for some very specific applications for which it is designed, Erlang's general performance is simply not comparable to that of D. A lot of D's complex set of features is geared towards increasing runtime performance. Erlang just doesn't compare.
« First   ‹ Prev
1 2 3 4 5 6 7 8 9 10
Top | Discussion index | About this forum | D home