www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - A quotation from Reddit

reply bearophile <bearophileHUGS lycos.com> writes:
A quotation from a little comment I've found on Reddit:

http://www.reddit.com/r/Python/comments/dtnwe/how_often_is_the_speed_of_python_considered_when/c12uk3g

Finally, by the time you have implemented reflection, introspection, a decent
plugin system and meta objects in your C++ application you've inevitably
Greenspunned yourself a dynamic language anyway. Why bother, when you can take
Python off the shelf?<

I presume in large C++ programs those features are useful. A way to solve this problem is to give those features to D. An alternative solution is to make D very easy to interoperate with a dynamic language as Python/Lua/Ruby. A third way is intermediate, this means adding more static introspection to D, and allowing for an easy interfacing between D and a dynamic language. This third way may be the best. Bye, bearophile
Oct 20 2010
parent reply so <so so.do> writes:
These features are must have for a modern language, falling back to a  
dynamic language for scripting is understandable but reflection?
One another thing is the environment you like to work with and this is his  
real point IMHO. He likes to work in a dynamic typed environment like  
Python, and when it is not enough he switches to another language. Those  
who like to work in a static language had/have no choice, but D.

On Thu, 21 Oct 2010 05:32:06 +0300, bearophile <bearophileHUGS lycos.com>  
wrote:

 A quotation from a little comment I've found on Reddit:

 http://www.reddit.com/r/Python/comments/dtnwe/how_often_is_the_speed_of_python_considered_when/c12uk3g

 Finally, by the time you have implemented reflection, introspection, a  
 decent plugin system and meta objects in your C++ application you've  
 inevitably Greenspunned yourself a dynamic language anyway. Why bother,  
 when you can take Python off the shelf?<

I presume in large C++ programs those features are useful. A way to solve this problem is to give those features to D. An alternative solution is to make D very easy to interoperate with a dynamic language as Python/Lua/Ruby. A third way is intermediate, this means adding more static introspection to D, and allowing for an easy interfacing between D and a dynamic language. This third way may be the best. Bye, bearophile

-- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
Oct 21 2010
parent "Paulo Pinto" <pjmlp progtools.org> writes:
Why?

There are many static languages that support reflection, plugin systems
and meta-objects.

Actually one of my disapointments with D was that after reading the TDPL
I did not found any example of such features in D.

--
Paulo

"so" <so so.do> wrote in message news:op.vkw5qztw7dtt59 so-pc...
 These features are must have for a modern language, falling back to a 
 dynamic language for scripting is understandable but reflection?
 One another thing is the environment you like to work with and this is his 
 real point IMHO. He likes to work in a dynamic typed environment like 
 Python, and when it is not enough he switches to another language. Those 
 who like to work in a static language had/have no choice, but D.

 On Thu, 21 Oct 2010 05:32:06 +0300, bearophile <bearophileHUGS lycos.com> 
 wrote:

 A quotation from a little comment I've found on Reddit:

 http://www.reddit.com/r/Python/comments/dtnwe/how_often_is_the_speed_of_python_considered_when/c12uk3g

 Finally, by the time you have implemented reflection, introspection, a 
 decent plugin system and meta objects in your C++ application you've 
 inevitably Greenspunned yourself a dynamic language anyway. Why bother, 
 when you can take Python off the shelf?<

I presume in large C++ programs those features are useful. A way to solve this problem is to give those features to D. An alternative solution is to make D very easy to interoperate with a dynamic language as Python/Lua/Ruby. A third way is intermediate, this means adding more static introspection to D, and allowing for an easy interfacing between D and a dynamic language. This third way may be the best. Bye, bearophile

-- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/

Oct 21 2010