Looking for a language recommendation
Author |
Message |
Skynet
|
Posted: Fri Feb 02, 2007 10:58 pm Post subject: Looking for a language recommendation |
|
|
So, I'd like to expand my horizons and try out another approach to programming. Since I've got some time on work term, I figure now is a good time to try something new out. As a bit of background, I'm in Tron Eng @ UW, and I've got a bit of experience in embedded programming, controls, machine vision and robotics. Languages wise, that's C, C++, Java, MATLAB and various PLC brands. I'm looking for something completely different that'll cover all the bases, as it were - basically, something which'll provide a good foundation for future work. I use both Linux and Windows, so platform doesn't matter.
Any ideas? |
|
|
|
|
|
Sponsor Sponsor
|
|
|
Clayton
|
Posted: Fri Feb 02, 2007 11:11 pm Post subject: Re: Looking for a language recommendation |
|
|
how about Ruby? have you thought about anything in the functional realm (ie O'Caml)? |
|
|
|
|
|
Cervantes
|
Posted: Fri Feb 02, 2007 11:21 pm Post subject: RE:Looking for a language recommendation |
|
|
Are you looking for something related to your field, or something different? If you want something different, Freakman's suggestions are good. If you want something related to your field... might as well start learning Assembly. =/
Come to think of it, LISP. Learn LISP. It'll be fun, and it will introduce you to all kinds of new programming concepts (mainly the concepts from the paradigm that is functional programming). Also, LISP is used a lot in AI, which is close to Mechatronics.
If you don't mind my asking, what year are you in? |
|
|
|
|
|
Skynet
|
Posted: Sat Feb 03, 2007 12:02 am Post subject: Re: Looking for a language recommendation |
|
|
Yeah, I'm looking for something in the functional realm. I do enough direct hardware stuff (read: C) at work- I figure a wider background in types of programming languages will provide me with another perspective on the problems in my field which lean towards CS.
Right now, I'm on the work term between 2B and 3A. |
|
|
|
|
|
Tony
|
Posted: Sat Feb 03, 2007 1:50 am Post subject: RE:Looking for a language recommendation |
|
|
Didn't you guys cover Assembly in 2A (digilogic)?
Though yeah, OOP and Functional are the two programming paradigms. Not sure how much Java you know (that is outside of Tron curriculum), so Functional programming is a sure way to learn something completly new. |
Tony's programming blog. DWITE - a programming contest. |
|
|
|
|
Skynet
|
Posted: Sun Feb 04, 2007 10:46 pm Post subject: Re: RE:Looking for a language recommendation |
|
|
Tony @ Sat Feb 03, 2007 1:50 am wrote: Didn't you guys cover Assembly in 2A (digilogic)?
Though yeah, OOP and Functional are the two programming paradigms. Not sure how much Java you know (that is outside of Tron curriculum), so Functional programming is a sure way to learn something completly new.
Yeah, did some x86 stuff in 262. Haven't had to touch it since, and I don't have a problem with it. Elegant bitwise stuff can be done in C...I don't see the need to worry about finding places to store intermediate results.
I seem to have noticed that you forgot procedural programming...why the hate?
I installed CMUCL - so far, it seems interesting. Counting parenthesis is a pain, but I like the strong emphasis on recursion. |
|
|
|
|
|
wtd
|
Posted: Mon Feb 05, 2007 12:00 am Post subject: RE:Looking for a language recommendation |
|
|
The vast majority of OOP languages are procedural. |
|
|
|
|
|
Skynet
|
Posted: Mon Feb 05, 2007 10:55 am Post subject: Re: RE:Looking for a language recommendation |
|
|
wtd @ Mon Feb 05, 2007 12:00 am wrote: The vast majority of OOP languages are procedural.
Yes, but not all procedural languages are OOP. |
|
|
|
|
|
Sponsor Sponsor
|
|
|
wtd
|
Posted: Mon Feb 05, 2007 11:01 am Post subject: RE:Looking for a language recommendation |
|
|
No.
That said, thoroughly learning an OOP language that has a procedural foundation will provide an excellent understanding of procedural programming. |
|
|
|
|
|
haskell
|
Posted: Mon Feb 05, 2007 12:11 pm Post subject: RE:Looking for a language recommendation |
|
|
For pure functional programming, I'd recommend Haskell. Haskell is just a joy to use for so many reasons. It's a complete jump from imperative languages, so its great if you want something new.
Haskell.org
I recommend the Glascow Haskell Compiler(GHC).
If you are a .NET fan, you can try F#.
And, if you want pure performance from your functional programming language, than I suggest Clean.
If you want a tried and tested language that was made for speed, flexibility and power, that is also considered to be a functional programming language, than I suggest Common Lisp. Just search it on Google .
Also for Common Lisp, Practical Common Lisp by Peter Seibel.
When in doubt, use Wikipedia and Google.
Hope this helped some one . |
|
|
|
|
|
Clayton
|
Posted: Mon Feb 05, 2007 12:56 pm Post subject: Re: Looking for a language recommendation |
|
|
haskell wrote:
And, if you want pure performance from your functional programming language, than I suggest Clean.
Native compiled O'Caml is actually faster than C++. It is also a fully functional language with Object Oriented capabilities. |
|
|
|
|
|
haskell
|
Posted: Mon Feb 05, 2007 1:15 pm Post subject: Re: Looking for a language recommendation |
|
|
They are very simlar in speed and such. as this benchmark demonstrates.
As well as Clean compared to C
And O'Caml compated to C
Though, in my opinion from the usage of both Clean and O'Caml, I find that Clean is faster. But, its probably just a bias, though the benchmarks(as obscure as they are) show that Clean is slightly faster overall. |
|
|
|
|
|
wtd
|
Posted: Mon Feb 05, 2007 1:32 pm Post subject: RE:Looking for a language recommendation |
|
|
Either way... hardware is cheap, and (decent) programmers are not. Choose the language that lets you express a solution more readily and reliably. |
|
|
|
|
|
|
|