What languages should I learn?

Pages: 12
I was thinking of learning a functional language as well as Lua and maybe Java (although I'm not sure about the latter).

I don't know what functional language to pick; I was thinking either Haskell or Scheme but I'm not sure. Can anyone suggest one?

I'm also not sure whether I should bother learning Lua and/or Java, too.
I think C/C++ is better.
I also like Python.
Read SICP.


(Pretend this is an Advice Dog image.)


Reach Satori.
closed account (z05DSL3A)
If you want a purely functional language, then I think Haskell would suit the bill. You could look at Miranda but that may be a little old by now (it was used when I went to university, I have a feeling that it has been superseded in this regard by Haskell).

Have fun!

http://miranda.org.uk/
@Yufree,
I think it's good to learn a few different languages (specifically, several that are from different paradigms). My plan is to be decalingual (including two natural languages by this time next year.

@helios,
You mean this: http://mitpress.mit.edu/sicp/full-text/book/book.html ?

@Grey Wofl,
Ok. I was looking at Haskell already; thank you. I'll take a look at Haskell I think.
It's odd how I was just about to make a similar thread...
Though I haven't made any choice yet
What are the other languages you're going to learn?
I prefer Scheme over Haskell any day, particularly the PLT variants (mzscheme).
http://www.plt-scheme.org/

Java is not a functional language...

As for an embeddable scripting language, I prefer Tcl. http://wiki.tcl.tk/
I know nothing about Lua, but sooner or later I want to learn it.
Java is not a functional language...
I actually misread that at first, too.

I was thinking of learning a functional language as well as Lua and maybe Java
closed account (S6k9GNh0)
I would think one low level language and a few high level language. I know a little bit of everything from bash to ASM to php.
Last edited on
What about go (google's new language)?

( http://golang.org/
http://en.wikipedia.org/wiki/Go_%28programming_language%29
)
I doubt many of you have tried it (or am I wrong?) speculations are welcome :)
Last edited on
@hamsterman,
I don't know either, but I'm looking at Scheme or Haskell and then possibly Lua and Java, although I'm not sure I like the look of Lua now that I think about it.

@Duoas,
I'm not sure. PLT Scheme looks like it has quite a neat syntax, and I was a little put off by how difficult Haskell looks; but that almost makes me want to learn it more.

And who said Java was a functional language?

@computerquip,
If you're only counting languages which are Turing-complete, then I know Pascal, x86 ASM (GAS and Intel syntax), Python, Perl, C++ and C (in order of how well I know them); but I only really know Perl and C/C++ well enough to make much use of them. I think I should practice more at ASM, Python and Perl before I learn anything else.

@tition,
That looks alright, but I think I'll wait a little while until more people have experience with Go; then I can see what other people think about it and decide what to do.
Last edited on
As helios indicated, I misread you. I first thought you were only interested in learning functional languages.

Haskell isn't difficult. It just strikes me as one of those languages for the purists out there, and I dislike some of its design features (which are correct, mind you, but I think they are implemented in an obnoxious way... For example, if you want to do I/O, every level of your program down to the I/O parts must be explicitly contaminated with monads. This is correct, but obnoxious). There is a very hard-core set of enthusiasts continually working on improving the language. I think by now it should have proper modules even...

Java can do some neat things; it is worth your time to pick it up and see what it can do (and then throw it away...).

:-)
I think I'll practice Python, Perl and Assembly some more, and then try PLT Scheme and Java. I think Java will be easy to learn with a C++ background; but might make some OOP aspects of C++ easier for me to learn (I still can't be asked to learn about classes and virtual functions and polymorphism... I know how to use classes, I just don't know... when).

Thanks guys :)
chrisname wrote:
although I'm not sure I like the look of Lua now that I think about it.


What? Why?
I don't like the syntax (code from wikipedia):
1
2
3
4
5
6
7
8
9
  local oldprint = print           -- Store current print function as oldprint
  function print(s)                -- Redefine print function
    if s == "foo" then
      oldprint("bar")
    else 
      oldprint(s) 
    end
  end
end


I already know two scripting languages anyway (Python and Perl); so I don't think learning another one will be much use to me.
Looks like BASIC. Probably one of the most harmless and unassuming syntaxes ever.
Maybe; but I still don't like it.

I just realised... if I get into the college I want to go to, I'm going to have to learn visual basic. :(
Lol chris, VB isn't that bad...you can make a GUI interface out of it and track IP address XD

/CSI reference

as for being forced to learn visual basic, it really isn't that bad...well, That's not to say it's in any way good. I was forced to learn in my sophomore year of highschool :\ Councilor put me in that class when all others were full that period thinking "Oh hey, he likes programming, lets give him a challenge" More like "oh Hey, he likes programming, lets make him want to commit Japanese ritual suicide through Hara Kiri using the keyboards in the programming lab"
/CSI reference

I shuddered when I heard Visual Basic.
I shuddered more when I heard that.
I swear, CSI is such a ridiculous show.
Last edited on
Depends which version. .NET isn't too different from C#. 6.0 is, however, awful. Yeah, MSVS 6.0 was an all around disaster.
Pages: 12