• Quick note - the problem with Youtube videos not embedding on the forum appears to have been fixed, thanks to ZiprHead. If you do still see problems let me know.

Programming Help

Skylark,
I have heard this type of argument many times, and I simply do not understand it. With a few very minor exceptions, any C code is also valid C++ code. So what advantage does C give over C++? If there are aspects of C++ that don't appeal to you, simply don't use them. All C++ does is give you more tools to work with. You don't have to actually use them.

Definitely true.

Of course, one big advantage that C++ has over C is when dealing with basic user input; using Cin is much easier than dealing with things like scanf. Not a big deal when dealing with GUI programming, but when you're trying to do something basic (using command line input), being able to read simple input easily is a good thing.
 
Download R for free.
(GNU version of S+)

Has BASIC-like language.
I second R.

Never mind all the esoteric stuff.

R includes all the statistics functions, has built in graph and plot functions, and has a very simple mechanism for reading data from flat text files (comma separated values.)

It also includes a lot of other mathematical functions. Very cool, and just the tool for doing statistical analysis.


Put it this way:
Would you rather write a routine to calculate cross correlation, or just do a three line program to read two data files and plot the cross correlation?

PS:
If you are doing any kind of heavy statistics, then it does matter whether you are using an interpreted langauge or not. If you don't think so, calculate the cross corellation of two data sets with 10000 points each and see how long Python or Java takes. Then do the same task with R. R is interpreted, but the routines that do the heavy lifting are built in an compiled from C. Worlds faster.
 
If your algorithm is simple, VB can work pretty well. VB is really not a very powerful or effecient language (it's decent for mathmatical stuff, but you wouldn't want to do heavy duty stuff in it).

It's advantage is that it makes nice shiny graphic-interface stuff. C, C++ and those sort of languages mostly are good for commandline stuff or non-interface parts of the program. You *can* do gui in them, but it's not especially easy or well optomized for that.

VB, you can create programs really quickly and have windows, buttons, dropdowns, text boxes, images. It's kinda nice for windows programming, because most people expect the programs they use to be button and menu based.

Otherwise, C and C++ are good for more havy stuff, like custom databases. C is especially effecient.

Pyton is supposedly pretty easy, from what I hear. Perl and PHP are also very easy, but they are designed mostly for CGI and server scripting.

Javascript is for webpages. And Java is for people who want to torture themselves with the most godaweful painful programing languge ever created.
 
VB, you can create programs really quickly and have windows, buttons, dropdowns, text boxes, images. It's kinda nice for windows programming, because most people expect the programs they use to be button and menu based.
Pyton is supposedly pretty easy, from what I hear. Perl and PHP are also very easy, but they are designed mostly for CGI and server scripting.

Javascript is for webpages. And Java is for people who want to torture themselves with the most godaweful painful programing languge ever created.

Java, godawful? Compared to what? Perl? Perl has some of the most arcane syntax of any language I have ever used. And I like Perl!
 
Java, godawful? Compared to what? Perl? Perl has some of the most arcane syntax of any language I have ever used. And I like Perl!

Dr Buzz0 has commented on his antipathy towards Java before, which I also find intriguing, especially considering he describes C++ as 'good' in two places in his last post. I've got nothing particularly against C++, but it's the very definition of painful.

Come on Doc, share with us your traumatic Java experience. I'm sure it'll be cathartic.
 
EDIT: Also please don't use visual BASIC, or anything with the word BASIC in it for that matter. In words of one greater than I, "It is practically impossible to teach good programming style to students that have had prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration." (Edsger W. Dijkstra: Selected Writings on Computing: A Personal Perspective)

What a massive load of BS. I programmed for YEARS in various forms of BASIC, and my evaluations here at Ubisoft always talk about how I'm good with code structure and making things nice and object oriented. If anything, working in BASIC on the C64 taught me to organize things myself because I couldn't rely on the language to do it for me.

Use whatever language will work best for your task.
 
What a massive load of BS. I programmed for YEARS in various forms of BASIC, and my evaluations here at Ubisoft always talk about how I'm good with code structure and making things nice and object oriented. If anything, working in BASIC on the C64 taught me to organize things myself because I couldn't rely on the language to do it for me.

Use whatever language will work best for your task.

Today's BASIC bears little to no resemblance to the original. If you try to port an early BASIC program to VB.NET you will quickly go nuts. OTOH, FORTRAN and C have evolved in ways that are largely backward compatible. This is because these languages had (and have) programs written long ago that are still in use today. Look at the BLAS and the stuff built using it to see how long FORTRAN has survived largely intact.
 
A week has passed since the OP. The Pig, have you decided on a language/solution?
 
OTOH, FORTRAN and C have evolved in ways that are largely backward compatible.

Not to knock your point (I agree with it) bit just a little bit of a correction:

There are 2 "common" dialects of C in use .. K&R (developed while ansi was screwing around trying to define a standard), and ANSI (the final standard.)

I don't know jack about Fortran so hum...

As far as BASIC .. There are at least two ANSI Basic standards but I am unaware of a single existing implimentation due to the shortcommings of the definitions.

Going over this thread.. I didnt see anybody mention Delphi. Borland has released a free version of their Delphi compiler and since its based on Pascal, its got a fairly strong language definition (Wirth had plenty of experience developing languages by the time he developed Pascal)
 
Dr Buzz0 has commented on his antipathy towards Java before, which I also find intriguing, especially considering he describes C++ as 'good' in two places in his last post. I've got nothing particularly against C++, but it's the very definition of painful.

Come on Doc, share with us your traumatic Java experience. I'm sure it'll be cathartic.

Well, I'm pretty much a C person, however CPP has some advantages for certain things like making database programs or for certain programs that involve passing complex data between things.

Java? Java is damn ugly. It makes you do a lot of stuff, even if you don't need it for your program. It's extremely strict. If you say "Hmm..for this program, I think I'm going to do things *this* way and since it's just a small program, I won't bother doing *this* because it's really not necessary"

And in reply Java says "NO! YOU CANT DO THAT! YOU MUST DO AS I SAY AND BE LIMITED AND WRITE YOUR PROGRAMS LIKE THIS!" Then it destroys all your will to live and mocks you.

Also, C is a well balanced language, it is effecient but not overly low-level. Java is slooooooooooooooooow. Java is designed to run on different machines and be cross-platform. You *can* compile it to an executable, but it's not as optomized for that. Hence, instead of running on one system well, it runs on all systems, badly....very very badly. It's like Esperinto: nobody speaks it natively. It would be better to make a cross-platform compilable package.

C is not good for gui interface, but is good for speed. VB is great for making a nice interface, but isn't very effecient for heavy stuff.

Java can be used for both and sucks equally at each. Java won't allow you to use stuff liek OpenGL, because that's platform-based. You could put it in the VM, if you don't mind even more overhead.

java programs are huge...actually....massive. If you want to write a hello-world program, you need to make sure your PC has at least a few gigs to hold the files in.


But it's not the programs I really hate. It's the language. I hate java so goddamned much.... I would *never* take a job where I'd work with it. You may say "Well, that would limit your job options and pay." Okay, that may be true, but there are certain things that I just won't do to myself. I wouldnt want a job as an undertaker either.
 
But it's not the programs I really hate. It's the language. I hate java so goddamned much.... I would *never* take a job where I'd work with it. You may say "Well, that would limit your job options and pay." Okay, that may be true, but there are certain things that I just won't do to myself. I wouldnt want a job as an undertaker either.

Take a deep breath and repeat "The right tool for the right job, the right tool for the right job...".

I work at a application company that must run on Windows and four favors on Unix. We need Java because it's cross-platform and we run with a very large memory footprint, so it's auto garbage collection is very useful. My company does enterprise monitoring, plus a lot of other functions, lots of real time objects.

Java is the best language for the work I do. It's wasn't designed for HelloWorld apps, it's design for enterprise apps.

So, it's overkill for most stuff, but it's not god awful. :)
 
Take a deep breath and repeat "The right tool for the right job, the right tool for the right job...".

I work at a application company that must run on Windows and four favors on Unix. We need Java because it's cross-platform and we run with a very large memory footprint, so it's auto garbage collection is very useful. My company does enterprise monitoring, plus a lot of other functions, lots of real time objects.

Java is the best language for the work I do. It's wasn't designed for HelloWorld apps, it's design for enterprise apps.

So, it's overkill for most stuff, but it's not god awful. :)


I really feel for you. I know that there is a version of Object Pascal which can generate byte-ciode stuff. I'm not sure what else you could do. Create compilable packages?

I guess you could overhall the system. Perhaps that would be expensive, but can you put a dollar cost on ending the agony of java?
 
I really feel for you. I know that there is a version of Object Pascal which can generate byte-ciode stuff. I'm not sure what else you could do. Create compilable packages?

I guess you could overhall the system. Perhaps that would be expensive, but can you put a dollar cost on ending the agony of java?

Well if you're really reaching for solutions, CLISP http://clisp.cons.org/ offers transferable byte code (I think), and parrot might become usable at some point http://www.parrotcode.org/ .

Not that I'm recommending that someone should ditch java mid project on the say so of a bunch of people who don't have anything to do with it.
 
Today's BASIC bears little to no resemblance to the original. If you try to port an early BASIC program to VB.NET you will quickly go nuts. OTOH, FORTRAN and C have evolved in ways that are largely backward compatible. This is because these languages had (and have) programs written long ago that are still in use today. Look at the BLAS and the stuff built using it to see how long FORTRAN has survived largely intact.

But the quote is...

It is practically impossible to teach good programming style to students that have had prior exposure to BASIC.

Your statement is true, and reasonable, but not relevant to the quote. I had lots of exposure to BASIC, and I've easily learned proper code structure.
 
Heck, my first language was assembly code, and I write very structured programs. It's just a silly argument.
 
But the quote is...
Your statement is true, and reasonable, but not relevant to the quote. I had lots of exposure to BASIC, and I've easily learned proper code structure.

My point is that the BASIC that was originally slammed bears virtually no resemblance to those currently extant. This quote re today's BASICS is not valid in my view:
It is practically impossible to teach good programming style to students that have had prior exposure to BASIC.

That said, it was also an overstatement at the time. I too started with Assembler, Fortran, and BASIC but for anything complicated used RatFor which wrapped Fortran with structured programming constructs. Most all BASIC programs written back then with "GOSUB," parameterless calls were re-written or scrapped when parametered BASIC calls were introduced in language variants.
 
I really feel for you. I know that there is a version of Object Pascal which can generate byte-ciode stuff. I'm not sure what else you could do. Create compilable packages?

I guess you could overhall the system. Perhaps that would be expensive, but can you put a dollar cost on ending the agony of java?

I'm sorry but now you are just being silly. ObjectPascal!

Java, despite your hatred of it, is a fine and useful lanuage. The publically available libraries are worth it alone.
 
Angus said:
Nah, that's what function pointers are for.
It's the tokenizer, man! Next to the source character fetcher, the tokenizer is the most frequently called function in a compiler, say. I want speed. Remember speed? There is no advantage to invoking functions for tokenizer states, and only the very cleverest of compilers is going to figure out to transform function calls to gotos in this situation.

~~ Paul
 
I would recommend Java on the basis that it freely available, ubiqutous, relatively easy, mostly OO and stands a good chance of helping your career prospects (assuming you are a programmer, not a male stripper).

Its the best all-rounder.
 
Well if you're really reaching for solutions, CLISP http://clisp.cons.org/ offers transferable byte code (I think), and parrot might become usable at some point http://www.parrotcode.org/ .

Not that I'm recommending that someone should ditch java mid project on the say so of a bunch of people who don't have anything to do with it.

I'd recomend you ditch Java mid-project. I'd recomend you ditch java after completing 90% of the project. Hell...I'd recomend you ditch java reguardless of your situation.

Java is one of the things that has made me wonder if the IT industry is really where I belong because it's sometimes hard to avoid it.


I think Java might actually be against the Geneva convention....I'll have to double check that one.
 

Back
Top Bottom