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).
@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.
@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.
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).
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.
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"