• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

recommend a programming language

CSMR

Golden Member
Hi. I want to learn a language. I haven't used any of the main modern languages. I've been reading up a bit. I've only used Mathematica recently, which is a brilliant language, but you can't make applications with it. (Have done some procedural programming too ages ago on an old cooperative-multitasking OS.)

1. I've been reading about .NET which seems like a great idea despite the ridiculous name.
2. I'd like to try out OO programming which I don't know much about.
3. I don't like the idea of giving up functional facilities: first class functions, or pure functions which can be part of the input or output of other functions. I am rather vain about my programs and I like them to be beautiful!

I've heard about IronPython and Boo which are both python-based and work with .NET. And F# a Microsoft research language based on ML.

Anyone used the above languages or any other languages that are OO with higher order functions and which work with .NET?

Thanks for any guidance!
 
Originally posted by: GhettoBlaster
A lot of the job postings I see all want C#. If you want to do .NET programming, C# is desired by a lot of employers.
Thanks, yes I've looked at C#; it looks good but it's not functional. (Though you effectively get functions to take functional arguments by long circuitous routes they say). No one will employ me to code; this is just for fun at the moment.
 
Java and C# are two similar, modern, practically designed from the ground up to be perfect languages. You will find both of them to be much improved over older common languages like C++ and both can be used for virtually anything.
 
.NET especially ASP.NET is a fantastic RAD package. Easy to produce useful and productive apps in little time.

if you're just looking to learn for fun stick with VB.NET is so easy even a caveman could do it..... yeah that was bad.
 
I think you're overestimating the connection between higher order functions and program elegance 😉.

If you like the .Net model for Windows app or Web app development (and that's all it's about, honestly), then use C#. It's a wonderful language that preserves and builds upon all of the object-oriented features of its predecessors, while tossing all the complexity of C++ (unification of declarations and definitions being one great example).
 
Ruby

QUOTE
. . .encourage my readers to familiarize themselves with this terrific language.
END QUOTE

and

QUOTE
I am also amazed at the number of programs I've written over the years that I cannot even run any more, including an embarrassing number of comparatively recent Java programs that are no longer compatible with current Java runtime engines, something that should not have happened, at least not so quickly.
END QUOTE

both quotes are from the great Paul Lutus

Zest for life !!!
 
what exactly is your goal here? do you want to learn an OO language? if so, java is great for that (also since the syntax is so similar to c++ & c# you will probably be making yourself very versatile).

if you want to stick with functional languages: i have used smlnj which i think is great.

unfortunately i don't know of any modern OO lang that supports higher order functions 🙁
 

NET2.0 C#, C#, C#

Just had a talk about this w/ a potential employer regarding this, NET2.0 no question, C# right now is the way to go.

 
OK thanks for your input all of you; I'll take (most of) your advice and learn some C#, at least until I've understood the main concepts.

shader: Python claims to be OO and functional; it certainly seems to do functional programming well from what I've seen. Python and Ruby also I think.
 
CSMR, if you're really into functional programming you should check out Erlang. As an OO guy since Reagan was president, I can't make heads or tails of it, but it ought to be right up your alley.
 
If you just want to learn OO and do it cheaply, pick a well documented language like Java or C++ and setup a Linux dev box. If you want to learn an OO language and eventually get paid for using it, go with Java, C#, or VB.

techfuzz
 
While I'm late to the ballgame, imo Java or C# (possibly VB.NET if you have significant VB experience) is the way to go. These are BY FAR the industry-prefered languages for modern languages. While I understand you're not looking for employment for your coding, industry-preferred also means it'll be easier to find resources and cheaper to fund your hobby.

Good luck!
🙂
 
Back
Top