Difference (last change) (no other diffs, normal page display)
== Related =
* Languages vs. D
* D Transition Guide
* Feature List
* Rosetta Code: D category
* Language Specification
* Development with D
I would like to know your opinions regarding the prospects of D against the modern rising trend-setters like Python and 'the OO' Ruby.
The Top 5 differences/distinctions, please.
Any D and Ruby/python interoperation chances/benefits?
Thanking you, Irfan.
From NG:digitalmars.D/7129 / NG:digitalmars.D/7130:
Here is my view of Ruby vs D
- Ruby has a fast interpreter while D has a fast compiler.
- Ruby is a "pure OO" programing language, D is multi-paradigm.
- Ruby is only good for general appilication programming, D does system-level programming as well.
- Ruby has syntax similar to Eiffel, D is based off of C in that respect.
- Ruby is a threat to Perl and Python, D is a threat to C and C++.
- Ruby is dynamicly typed, D is staticly typed.
- Ruby is also great for small scripts, D isn't.
Ruby can interface with C so interfacing with D shouldn't be a problem, but I could be wrong.
I am interested in developing this, and in particular the idea of interfacing Ruby to D. I have already worked with both Ruby and D separately interfaced to C and C++ using SWIG (see D with Swig ). I would be interested to see a Ruby column in the table of language comparisons on Languages Versus D but don't feel competent to complete it myself. One of my interests is in the use of operator overloading so that expressions such as
can have their natural meaning for the user. I think that both D and Ruby are good for that.
As a start to this I realised that if I can call a D function from C then I can call the C function from Ruby. That turns out to be not too difficult - see D Called From C and D Called From C: Discussion
You are absolutely right - D can be one of best languages to program extensions for Ruby and to split program in two parts - time-critical written in D and using complex algorithms and datastructures written in Ruby
- Languages vs. D
- D Transition Guide
- Feature List
- Rosetta Code: D category
- Language Specification
- Development with D