best general purpose programming language? for free?

Anything about MUSIC but doesn't fit into the forums above.
RELATED
PRODUCTS

Post

I second respirator's suggestion of Ruby. It is a very flexible, object oriented language with free implementations for many platforms, including XP. You can find an installer here at RubyForge. The language is simple to learn (the installer includes the electronic version of the excellent book "Programming Ruby"), and it comes with a huge set of libraries.

I first came across Ruby four years ago, and today it is my favorite language. (For a living, I program telecommunications software in C++ and Java).

Lately Ruby has been grabbing headlines because of a fantastic web application framework called Ruby On Rails. Well worth a look if you are into web development.
helge

HELP! MY TYPEWRITER IS BROKEN!
E E CUMMINGS

Post

/me thirds the pro-pointers flagwaving. that's probably the main reason i hate java. pointers are great. c++ is my friend.
Kick, punch, it's all in the mind.

Post

jzero wrote:C# takes the best of java and significantly improves on GUI development. I've heard the commandline version of the compiler is free.
I've just recently started working with C#. While I would agree that it offers some improvements over Java, I'm not totally sure that GUI development is one of them. The .NET framework is actually lacking a lot of what the Java framework contains. Microsoft simply hasn't been able to throw enough resources at the .NET framework to port all of win32 yet. For example, there are NO sound generation routines in .NET. You'll likely spend a lot of time mucking about with PInvoke. Still, C# is a nice language, and I'm using it myself.
Incomplete list of my gear: 1/8" audio input jack.

Post

deastman wrote:
jzero wrote:C# takes the best of java and significantly improves on GUI development. I've heard the commandline version of the compiler is free.
I've just recently started working with C#. While I would agree that it offers some improvements over Java, I'm not totally sure that GUI development is one of them. The .NET framework is actually lacking a lot of what the Java framework contains. Microsoft simply hasn't been able to throw enough resources at the .NET framework to port all of win32 yet. For example, there are NO sound generation routines in .NET. You'll likely spend a lot of time mucking about with PInvoke. Still, C# is a nice language, and I'm using it myself.
I really like C#, but it definately feels like a young language. I think the next version is going to have some language improvements. Also directX is going to be fully supported, which will open up more multimedia style apps. Although the class library does have some really useful parts, it also lacks some stuff that just should be there. Having said that, I've found p-invoke a hell of a lot easier and quicker than jni. So it usually isn't too much effort to bring in access to the windows API or other libraries (winmm was a lot easier than I expected).

Tbh, I'd still recommend java to the original poster. It is very established now, very easy to pick up. The class libraries will let you do most things you want to do. And when the time comes, learning C++ will be a lot easier.
Of course, the lack of pointers is annoying, but that's not true when it comes to pointer related bugs!
Oh, also.. good IDEs (eg. eclipse) for java are available for free, whereas C# really needs visual studio, especially if you're doing GUI stuff (though I'm sure theres some freeware GUI tools for it somewhere).
We can conclude that the DCT of a pizza doesn’t resemble anything edible.

Post

[quote="Doogle"]
"........Tbh, I'd still recommend java to the original poster. It is very established now, very easy to pick up. The class libraries will let you do most things you want to do............"[/quote]

Don't Java programs require the Java Virtual Machine
to run? That would make them useless for people who
don't have Java or the JVM on their machines.

Post

deastman wrote:http://java.sun.com

edit: and you might want to pick up Eclipse to use as your IDE: http://www.eclipse.org/
Sorta useles if, like me you don't have Java installed on your machine.

Java...and especially the Microsoft JVM is inherently insecure over the WWW.

Post

GypsyJazz wrote:
Doogle wrote: "........Tbh, I'd still recommend java to the original poster. It is very established now, very easy to pick up. The class libraries will let you do most things you want to do............"
Don't Java programs require the Java Virtual Machine
to run? That would make them useless for people who
don't have Java or the JVM on their machines.
All non-compiled languages need some kind of runtime environment. Programs written in C# (or any other .Net language) require the .Net runtime environment/platform to be installed on the machine.
Perl (sorry to bring it up) scripts requires perl to be installed. etc etc.
These runtimes are usually (if not always) free.

And while the amount of commercial (or otherwise) desktop C# apps doesn't seem to be increasing rapidly, there's plently of desktop apps that require the Java runtime environment to be installed. I don't see this requirement as a Bad Thing really.
We can conclude that the DCT of a pizza doesn’t resemble anything edible.

Post

000 wrote:
jtxx000 wrote:Java would probably be your best bet then... no need to muck about with pointers and whatnot.
That ("muck about with pointers"), is actually the most powerful and efficient feature with that language C/C++, which set it appart from the "script kiddy" languages.


And well, progrramming languages are mostly "free", by the way.

.
I still have yet to see what pointers really offer over the java way of doing things besides not having the overhead of the garbage collector. The only thing I can think of that pointers can do that java's way can't is having a pointer to a pointer, and I can't think of a case when that'd be needed...
Image

Post

Doogle wrote: All non-compiled languages need some kind of runtime environment. Programs written in C# (or any other .Net language) require the .Net runtime environment/platform to be installed on the machine.
Perl (sorry to bring it up) scripts requires perl to be installed. etc etc.These runtimes are usually (if not always) free.
Sure..I understand all that. But, as I understand it, Java uses
a "global" virtual machine, which can not be configured to only run local programs. If you have the JVM on your machine (especially the MS one) and you connect to the net...then you are open to exploitation by malicious code.

I've alweays deleted the JVM from my machines since it was
the means by which horrible Cool Web Search browser hijacker
was introduced into our PCs.

If you've ever tried to get explain to the wife why her home page is giong to porn sites and it can not be changed...you'd know where I'm coming from.

I haven't had Java on any of our machines for a couple of years now and I notice virtually no difference to the web browsing experience. Conclusion: Java applets are a non-starter...largely replaced by Flash.

Is there a Java runtime that absolutely does not allow net/web access? ie it will only run local programs and will absolutely 100% guarantee that no malicicious hacker can remotely control or even enter my PCs?

Post

GypsyJazz wrote:Is there a Java runtime that absolutely does not allow net/web access?
I think most browsers have an option to turn Java applets off. Of course it may be possible to circumvent this, but I haven't really heard of anything like that.
We can conclude that the DCT of a pizza doesn’t resemble anything edible.

Post

Doogle wrote:
GypsyJazz wrote:Is there a Java runtime that absolutely does not allow net/web access?
I think most browsers have an option to turn Java applets off. Of course it may be possible to circumvent this, but I haven't really heard of anything like that.
Having to monitor whether Java is on or off on my system is not something I wasnt to devote even 1 ms of time to.

Simply not having Java on my system at all in any shape or form
is the only way I know of protecting myself against the huge security holes it brings to the party.

Java sucks. I don't use it or want it.

End of story.

Post

maybe try gcj, part of the gcc compiler collection? it will compile java source directly to native code so there's no need for the jvm at all.
Image

Post

jtxx000 wrote:maybe try gcj, part of the gcc compiler collection? it will compile java source directly to native code so there's no need for the jvm at all.

cool
I'll have a look at it........

Post

My Java development work has been for Windows, and there is a very easy way to get around the JVM issue there. First of all, go download JSmooth from SourceForge.

JSmooth will create an .exe file which launches your Java app for you, with various JVM options. The key option is to explicity specify the location of the JVM- thats right, you can bundle your own virtual machine with your app, and configure the .exe file to only use the JVM which you provide. This might create a size issue for web downloads, but for CDROM deliverables, it works great. You can ensure that your JVM is configured properly for memory allocation, and bundle in JMF or any other libraries you might need. :)
Incomplete list of my gear: 1/8" audio input jack.

Post Reply

Return to “Everything Else (Music related)”