Ruby vs Java vs c++

Diego V. wrote:

You may think your readers will be happy to put up with it, but most
probably if they cannot work out one of your abbreviation in some
short time, they’ll just give up and move to the next question.

So it’s all a matter of who has the most interest in the
communication, if you or your reader.

That said, maybe you can set a small ruby script and everyone wins,
you get speed and the rest of us get clarity. :slight_smile:

Diego

I didn’t realize I was being so cryptic. I guess I’ll have to remember
to post to this newsgroup in PLAIN and proper English.
Maybe I should make a script as you suggested… :wink:

David K. wrote:

Isn’t VBA rather similar to Ruby, anyway?

I stopped using VBA after I caught it making arithmetic mistakes. Not
rounding errors, outright mistakes. Now granted this was over 5 years
ago now, and they MAY have improved things…but I wouldn’t trust it any
more. I actually rewrote things to use Excel macros to avoid doing
arithmetic in VBA. I never did figure out under what circumstances it
would do this, but ever since then I’ve had an extreme distrust of
everything programmed in MSOffice. I figure that Excel macros are
probably safe…because there would be so many eyes looking at them.
But I’m not sure. I never heard anyone else saying that they had caught
VBA (actually basic for MSAccess2000) in an arithmetic error, but I
definitely did. The numbers were small enough that a third grader would
have seen the error, and there wasn’t ANYTHING subtle about the program.

IS it similar to Ruby? I sure hope not.

Charles D Hixson wrote:

I’m also giving a bit of consideration to Gambit Scheme with Termite.
(To be honest, the Scheme thing is probably on indefinite hold…but
Termite sounds quite interesting for a few years from now when more
than two processors/CPU becomes common. [Currently I have an SMP
system with two processors, so this wouldn’t buy me much, but how many
CPU slices with my next computer have?])
If you want a “core language”, Gambit Scheme/Termite is a good choice.
For small/agile production, it’s probably adequate. But if you want an
industrial strength large-product software development environment with
the same underlying concurrency semantics (more or less), you should
probably be looking at Erlang/OTP. It’s open source (but standardized by
Ericksson) and has lots of infrastructure (compilers, interpreters,
correctness analysis tools, databases, etc.)


M. Edward (Ed) Borasky, FBG, AB, PTA, PGS, MS, MNLP, NST, ACMC(P)
http://borasky-research.blogspot.com/

If God had meant for carrots to be eaten cooked, He would have given
rabbits fire.

Ross B. wrote:

Translation for Earthlings:

“I am reading every single post in the thread, believe me. Thank
you for the information.”

French is easier.

How about introducing an [OT][WHINE] subject prefix for this stuff?
So I know to skip your persistently-off-topic whining, of course…

You do have a point there. Some people are just plain A-N-A-L…

Charles D Hixson wrote:

arithmetic error, but I definitely did. The numbers were small enough
that a third grader would have seen the error, and there wasn’t
ANYTHING subtle about the program.
Excel itself has a long and painful history of mathematical
incorrectness. To be fair, some of it came from the need to be upward
compatible from Lotus 1-2-3, which in turn needed to be upward
compatible from VisiCalc. A simple example is the belief in Excel that
1900 was a leap year. I’m not sure what Google query you can use to hunt
down this stuff, but I would not make business decisions based on
anything done with Excel. I use it as an X-Y plotter when I’m in a
hurry, but when I actually care about the numbers, I do things in R.


M. Edward (Ed) Borasky, FBG, AB, PTA, PGS, MS, MNLP, NST, ACMC(P)
http://borasky-research.blogspot.com/

If God had meant for carrots to be eaten cooked, He would have given
rabbits fire.

On 19/11/2006, at 12:40 PM, n/a wrote:

'd love some comments that might help me consider my options and
pick a
path (c++, java or ruby) w/ a higher level of confidence… i
know that
people here will be biased towards Ruby, but that is fine: i want
to hear
about it…

I have been thinking, and talking, about this quite a bit lately.
Here is my take…

Learn Ruby and C. With Ruby you can write programs fast, with C you
can write fast programs, ie write your system in Ruby and then
rewrite the slow bits in C (rubyinline?).

C++'s days are numbered unless you are doing seriously performance
critical stuff (visualisation, some games, etc). Java is an
improvement but then Ruby is at another level.

EB wrote:

I actually wrote some programs in RATFOR (Rational Fortran) … man
I feel old.

Oh, so you own Software Tools, eh?

There was an option to order the software, you may
recall… not on CD, not on floppy… on tape.
Big honking reel-to-reel magnetic tape.

There was actually a Software Tools in Pascal, too,
which I still have somewhere.

Cheers,
Hal

My literacy is just fine, thank you very much. For the sake of speed, I
use shortcuts.

Please do understand that it is not your literacy that’s important,
it’s
my litereacy you should care about. If I am to help you, which I am
more
than happy to do if I can, I need to understand.

I understand your question faster and better when communication is
clear,
potentially leading to faster and better answers.

So, in advance, thank you for your help.

All the best
JE

Henry M. wrote:

C++'s days are numbered unless you are doing seriously performance
critical stuff (visualisation, some games, etc). Java is an
improvement but then Ruby is at another level.
How does C++ deliver “seriously performance critical” applications where
C can’t? Are the optimizers/code generators better for C++ than they are
for C? I would think a pure C code would have better performance,
simply because the language is simpler and easier to optimize.


M. Edward (Ed) Borasky, FBG, AB, PTA, PGS, MS, MNLP, NST, ACMC(P)
http://borasky-research.blogspot.com/

If God had meant for carrots to be eaten cooked, He would have given
rabbits fire.

Hey there!!!

I have not used TextMate myself, but seen enough screencasts to know
that it
does help your productivity. I just managed to configure my emacs (still
Work-in-progress) on my linux box at home and am trying some Ruby
programming with it. Though to answer your question, there seem to many
good
alternatives to TextMate for Windows. Here is a list (check the
comments)

http://macromates.com/blog/archives/2005/11/07/windowslinux-alternative/

Further, there seem to be some attempts to make a TextMate clone like
this
one…

You can download the 30 day trial on Windows (or even Linux… the claim
is
that its close to being a cross platform impl) …

Good luck… Let us know if that works for you…

Raju

M. Edward (Ed) Borasky wrote:

Henry M. wrote:

C++'s days are numbered unless you are doing seriously performance
critical stuff (visualisation, some games, etc). Java is an
improvement but then Ruby is at another level.
How does C++ deliver “seriously performance critical” applications where
C can’t? Are the optimizers/code generators better for C++ than they are
for C? I would think a pure C code would have better performance,
simply because the language is simpler and easier to optimize.

And conversely, what’s the problem with using C++ instead of C for
performance-critical Ruby extensions or any “fast code”? It’s not THAT
much overhead compared to pure C, and I’d bet money on that it’ll be
less than the cost of interpreter callouts (in doing data structure
marshalling or manipulating Ruby objects as opposed to not having to for
a straight C++ app) is. The heaps and piles (I know, I can get cream for
that) of inconsistency inside C would make that overhead worth it for
me, as well as the fact that doing robust code is horrible busywork.

Also, for gaming, .NET seems to be gaining hold recently, if the
(sometimes amusingly tangled) dependencies new stuff has on it are a
reliable hint, although I can’t tell which of the C# syntax flavours it
is that’s being used, obviously.

David V.

David V. wrote:

performance-critical Ruby extensions or any “fast code”?
Absolutely nothing. I know of several high-performance (and quite
well-structured) scientific libraries that are written in C++, and I’ve
even seen a couple of decent OS microkernels done in C++. I simply find
C++ unreadable, which is why I’m such a big fan of SWIG. :slight_smile:


M. Edward (Ed) Borasky, FBG, AB, PTA, PGS, MS, MNLP, NST, ACMC(P)
http://borasky-research.blogspot.com/

If God had meant for carrots to be eaten cooked, He would have given
rabbits fire.

James C. wrote:

On 2006-11-20 10:16:19 -0500, stef [email protected] said:

On Sun, 19 Nov 2006 17:20:29 -0800, Paul L. wrote:

stef wrote:

as opposed to a chip.
Surely, you can make out that “u” = “you”, etc…

Sure, I can, but I’ll be less inclined to undertake the effort of
reading something if it makes my eyes bleed. Failing to use proper
English is jarring to me. Most of us grew up reading books; the English
you use is not the English we are used to reading.

Boy, you are going to love this (frightening development, IMHO):

New Zealand students to use ‘text-speak’ in exams

The Associated Press

New Zealand’s high school students will be able to use “text-speak”
– the mobile phone text message language beloved of teenagers –
in national exams this year, officials said Friday.

Text-speak, a second language for thousands of teens, uses abbreviated
words and phrases such as “txt” for “text”, “lol” for “laughing out
loud” or “lots of love,” and “CU” for “see you.”

The move has already divided students and educators who fear it could
damage the English language.

New Zealand’s Qualifications Authority said that it still strongly
discourages students from using anything other than full English, but
that credit will be given if the answer “clearly shows the required
understanding,” even if it contains text-speak.

The authority’s deputy chief executive for qualifications, Bali Haque,
said students should aim to make their answers as clear as possible.

Confident that those grading papers would understand answers written
in text-speak, Haque stressed that in some exams, including English
– where good language use is specifically required – text
abbreviations would be penalized.

Post Primary Teachers’ Association President Debbie Te Whaiti said the
authority’s move reflects the classroom situation.

“Individual teachers are grappling with it (texting) every day,” she
said

Teachers would have concerns if text slang became acceptable in
everyday written language in classrooms, she said.

Critics said the National Certificate of Educational Achievement or
NCEA, the main qualification for high school students, would be
degraded by the authority allowing text speak use in exams.

The minor United Future Party said in a statement: “Untd Futr is
cncernd bout da xeptnce of txt spk 2 b allwd in ritn xams 4 NCEA
(United Future is concerned about the acceptance of text speak to be
allowed in written exams for NCEA).”

“Skoolz r ther 2 educ8 + raze litracy 2 certn standrds (Schools are
there to educate and raise literacy to certain standards,” the
statement quoted United Future lawmaker Judy Turner as saying." NCEA
shudnt let da standrd b decidd by informl pop cultr of da time."

High School principal Denis Pyatt said he wouldn’t encourage students
to use text abbreviations in exams – but he was excited by the
language development.

“I think text messaging is one of the most exciting things that has
happened in a long time. It is another development in that wonderful
thing we call the English language,” he said.

Internet blogger Phil Stevens was not amused by the
announcement. “nzqa(New Zealand Qualifications Authority): u mst b
joking,” Stevens wrote. "or r u smoking sumthg

http://www.iht.com/articles/ap/2006/11/09/asia/AS_ODD_New_Zealand_Text_Exam.php
http://www.cnn.com/2006/WORLD/asiapcf/11/11/nz.text.ap/index.html

EB

The corporate-owned, single-vendor product angle is a debatable point.
Couldn’t you say that about — hmm, lessee — C being started at Bell
Labs, Smalltalk being started at Xerox PARC, Java being started at Sun,
etc.? Plenty of languages were started by companies and weren’t
collaborative FOSS. That doesn’t mean they are inherently flawed or
unworthy of consideration because of that. Now Microsoft being behind
languages such as C# and whatnot could restrict platform implementation
to Windows only. But then again look at Mono. Plus with Microsoft’s
WPF/E the intent is to deploy .NET to a variety of devices, not just
Windows PC’s. There will be a WPF/E plug-in for web browsers such as
Safari, Mozilla, Opera, etc.

M. Edward (Ed) Borasky wrote:

with the same underlying concurrency semantics (more or less), you
should probably be looking at Erlang/OTP. It’s open source (but
standardized by Ericksson) and has lots of infrastructure (compilers,
interpreters, correctness analysis tools, databases, etc.)

There’s one (1) text on Erlang, and it’s out of print. There’s so
little documentation of it that when I first encountered it on the web I
thought it was a new language.

Erlang seems to have a lot of good features, but to me it feels
moribund. Even Eiffel appears to have a more vibrant community. (I’ll
grant that this may be appearance only.) If I compare that with, say,
Ada… I don’t like the way Ada is headed, but it DOES appear to have a
community, and well maintained compilers (plus commercial development
environments that I know nothing about).

If Erlang is to succeed, it needs more examples and more tutorials.
OTOH, the version I installed this year didn’t crash on the example
programs I tried, unlike the one that I installed last year. (In both
cases using the standard Debian repository.)

I don’t really like Scheme. I find Ruby (and Erlang) to be nicer
languages. But I may go that way anyway merely because it feels like a
more enduring distributed environment. (I’m not sure about termite.
Apparently it only works with Gambit Scheme, and this seems to imply
that it’s significantly non-standard in very limiting ways. So I’ll
wait until there’s at least a “second source” before committing myself.)

Well, this won’t be significant for a few years yet. Perhaps something
newer and better will pop up in the meantime. Or perhaps something will
happen to change my perception of the current players. Eventually I’ll
need to decide. It would be nice if whatever I decided worked well with
Ruby code.

M. Edward (Ed) Borasky wrote:

that they had caught VBA (actually basic for MSAccess2000) in an
hurry, but when I actually care about the numbers, I do things in R.

I’m talking about something on the level of 17 + 3 => 21
I could GUESS that internally it was represented as 17.45 as an integer
3.45 as an integer => 20.9 as an integer, so round up to display it…
But the numbers WERE integers. There would be no reason to represent
them as floats, much less as floats near the rounding point.

Mind you, this wasn’t the only problem. My favorite one was the program
that had been working and stopped. The only way to easily fix it was to
export the routine as a text file, delete the original, and then import
the text file. My guess was that MS was storing the code mixed in with
the text of the code, and it somehow corrupted the compiled text. So
what I was doing was forcing the entire thing to be recompiled. But I
didn’t make that guess until considerably after I discovered how to fix
it, so I just continued doing what worked. Using MSBasic is largely
black magic rather than programming anyway.

Glad I’m free of THAT now!

Charles D Hixson wrote:

There’s one (1) text on Erlang, and it’s out of print. There’s so
little documentation of it that when I first encountered it on the web
I thought it was a new language.
Actually, the open source install package contains the entire
documentation set in machine-readable form. It’s way too big to commit
to paper.

Erlang seems to have a lot of good features, but to me it feels
moribund. Even Eiffel appears to have a more vibrant community.
(I’ll grant that this may be appearance only.) If I compare that
with, say, Ada… I don’t like the way Ada is headed, but it DOES
appear to have a community, and well maintained compilers (plus
commercial development environments that I know nothing about).
Erlang is in a very real sense like Java, in that it is both an open
source community project and a commercial venture by a large
corporation, Ericksson. There was an Erlang workshop here in Portland in
September. There were about fifty people there, with the largest
contingent coming from Amazon. I haven’t seen a bunch of Amazon people
at the Ruby meetings, so I’m assuming they’ve made a decision to go with
Erlang.
If Erlang is to succeed, it needs more examples and more tutorials.
OTOH, the version I installed this year didn’t crash on the example
programs I tried, unlike the one that I installed last year. (In both
cases using the standard Debian repository.)
I have the utmost respect for the Debian people, but when I’m trying to
learn a new package, I almost always download the upstream source and
build it myself, rather than taking a packaged version. Of course, with
Gentoo, that’s pretty much how the distro works – just about everything
that can be built from the upstream source is built that way. :slight_smile:
I don’t really like Scheme. I find Ruby (and Erlang) to be nicer
languages.
I have a very fond spot in my heart for Lisp 1.5. Common Lisp is
bloated, and Scheme has different semantics. But I think Scheme is much
closer to the spirit of Lisp 1.5, and it’s a heck of a lot easier to
implement/hack on than Common Lisp. So I’m becoming a Schemer, although
I doubt if it’s really as much fun as Forth. :slight_smile:

decided worked well with Ruby code.
Well … of the “current players” I think Erlang is your best bet, but
download the latest full Erlang/OTP source and build it yourself, rather
than taking the Debian package(s). But in a “few years” I’m sure Ruby,
given the backing of Sun and Microsoft that exists today, will have what
it needs if the JVM and CLR support the primitives.


M. Edward (Ed) Borasky, FBG, AB, PTA, PGS, MS, MNLP, NST, ACMC(P)
http://borasky-research.blogspot.com/

If God had meant for carrots to be eaten cooked, He would have given
rabbits fire.

n/a wrote:

hi, newbie so please be tolerant… :wink:

i need to start to learn a programming language to be able to develop
custom aps to be applied to a variety of purposes but mainly 1)
financial
data modeling–including graphics and data handling via database
queries,
etc.; and 2) more general business-type aps.

my feeling is that i hate BLOATED sluggish programs (like some Java
program running on older JVM’s and perhaps not written in an optimal
way…u get the idea.)

if i need to make a choice between fancy and efficient,
speed, etc., then it’s an easy choice 4 me of efficient.
which is why i have just started w/ c++.

And that would be the best choice. If you want efficiency you should
definitely use C++/Visual C++. If you ask me, it’s the best programming
language around, when you want efficiency, power with a resonable amount
of work when writing code.
However, Java would more suited when you want to make things fast and
not care very much about efficiency. For example, if you like to split
up a mail address like [email protected] and you want to do it
fast, you have to allocate buffers, use strtok and so on and so forth.
With java, that’s piece of cake

however, speaking to one my programmer friends who is a top level Java
programmer (the stuff he writes is very efficient and fancy as
well–great balance), he is telling me that 1) c++ is being phased out
(except 4 real low level stuff like drivers, etc.) in favor of languages
such as Java or Ruby. he recommends i switch from learning c++ to
learning
Java or Ruby. i wd hope to be able to choose the best path and not have
to
switch tack in the middle as my IT capablity is not a full time
activity,
but more of a support 4 my main one–finance.

of course, learning curve is to be taken into consideration as well…

'd love some comments that might help me consider my options and pick a
path (c++, java or ruby) w/ a higher level of confidence… i know
that
people here will be biased towards Ruby, but that is fine: i want to
hear
about it…

EB wrote:

Sure, I can, but I’ll be less inclined to undertake the effort of
reading something if it makes my eyes bleed. Failing to use proper
English is jarring to me. Most of us grew up reading books; the
English you use is not the English we are used to reading.

Boy, you are going to love this (frightening development, IMHO):

The NZQA being hapless muppets is a new development?

runs for the hills

David V.

Guido S. wrote:

For finance programming, am not so sure. You may want to make sure you
are
good with R/Matlab and Mathematica.
R if you want free software, Matlab or Mathematica if the boss is
buying. :slight_smile:

Or you may want to learn APL, if you
want to be an arcane master dazzling the operator-overloading gang
(both pro
and con sides) with your sheer conciseness and power. Well, I don’t know
APL, but that is how I imagine it to be. All kinds of crazy symbols,
where
you need a special keyboard.
Do finance types still use APL? I thought Matlab and Mathematica had
pretty much supplanted APL and its successors. I think you can still buy
a J license, though, and there is a fairly inactive open source APL-ish
package called A+ (aplus in Debian).

Actually, though, I think APL is the solution to global warming. For one
thing, you can write the climate model in one line of code, which uses
much less electricity than the hundreds of lines of FORTRAN the other
models use.


M. Edward (Ed) Borasky, FBG, AB, PTA, PGS, MS, MNLP, NST, ACMC(P)
http://borasky-research.blogspot.com/

If God had meant for carrots to be eaten cooked, He would have given
rabbits fire.