Live data from Hacker News

What programming languages do you know and which ones do you want to learn?

news.ycombinator.com

21–30 of 63 posts

Re: What programming languages do you know and which ones do you want to learn?

#22
post #15

The languages I used tied pretty heavily to the computers I used. In chronological order: - 7-8 ('98-99): Accidentally broke the menu system on a random old DOS machine I was given. The person who gave me the box wrote a new menu for it in QBasic 1.1. This person did not know about "QBASIC /RUN" + "SYSTEM", so gave us instructions ("Alt, F, X") on how to exit QBasic. Of course I didn't exit QBasic, I tinkered with th…

> My main challenge is in finding a language I can enjoy working with that doesn't require a consistently clear brain to work with: I frequently have a foggy head due to various health issues (which are expensive to fix - and, hilariously, are also why I don't have a job).

There aren't many. I say this as someone whose head also gets screwed over by health.

Really, probably the language you are most familiar will fill the niche, because of muscle memory and the like.

However, the languages I find easiest on my bad days (not the worst, because programming is impossible on those):

* Python, because I know it really well

* Scheme, because it can't get much simpler. You can learn 90% of syntax, macros, types and functions in a (good) day or two. Edit: Look for Chicken for fast compilation, and Racket for many libraries. (Racket is Scheme+more, so not really scheme.)

* Forth, basically the same reasons as Scheme.

* Awk. It's a lispy C. The docs are fairly decent, and though its way of handling stuff can be a bit unusual (BEGIN, END, and in between that, something that runs on every line of input), its pretty effective as a programming language, and hasn't changed for a long time, making all tutorials and docs up to scratch.

Of all of those, Scheme is the simplest when my brain refuses to count to 5. (Seriously, it gets stuck at random points if I try on a bad day).

Re: What programming languages do you know and which ones do you want to learn?

#23
post #22
post #15

The languages I used tied pretty heavily to the computers I used. In chronological order: - 7-8 ('98-99): Accidentally broke the menu system on a random old DOS machine I was given. The person who gave me the box wrote a new menu for it in QBasic 1.1. This person did not know about "QBASIC /RUN" + "SYSTEM", so gave us instructions ("Alt, F, X") on how to exit QBasic. Of course I didn't exit QBasic, I tinkered with th…

> My main challenge is in finding a language I can enjoy working with that doesn't require a consistently clear brain to work with: I frequently have a foggy head due to various health issues (which are expensive to fix - and, hilariously, are also why I don't have a job). There aren't many. I say this as someone whose head also gets screwed over by health. Really, probably the language you are most familiar will fil…

> There aren't many. I say this as someone whose head also gets screwed over by health.

Interesting. Maybe we should compare notes sometimes. I have a bit of a story with finding alternative-type stuff.

- I've been contemplating tackling Python, in spite of the 2.x/3.x thing. There's the perfect vacuum where versioning shouldn't be a problem, and the practical real world where knowing Python and the differences between the two will let me actually do interesting things.

- Thanks for the tidbit about Scheme - and about Chicken vs Racket!

- ColorForth is particularly interesting, and I found BigFORTH a little while back (which needed to be compiled with -O0 in order to not segfault, yay). Of course "make my own Forth " is in there somewhere :P

- I completely forgot to mention Awk (!) mostly because I have no idea at what point I began to pick it up, but I did get a basic idea of how it works a while ago, and I've been factoring it into shell pipelines more frequently lately. It's great for when I need to do something that sed can't express well (and I just properly read about how match() a) returns the index and b) also works apropos to grep recently, which is great)

(As an aside, Lua is ~200K and awk is ~632K. That is just wrong. [Mumbling about rewrite])

I'm reasonably familiar with the "not wanting to count to 5" thing... heh. Interesting about the Scheme thing in that context. I'll definitely have to give it a look.

Re: What programming languages do you know and which ones do you want to learn?

#24
post #23
post #22

Earlier quoted context omitted.

> My main challenge is in finding a language I can enjoy working with that doesn't require a consistently clear brain to work with: I frequently have a foggy head due to various health issues (which are expensive to fix - and, hilariously, are also why I don't have a job). There aren't many. I say this as someone whose head also gets screwed over by health. Really, probably the language you are most familiar will fil…

> There aren't many. I say this as someone whose head also gets screwed over by health. Interesting. Maybe we should compare notes sometimes. I have a bit of a story with finding alternative-type stuff. - I've been contemplating tackling Python, in spite of the 2.x/3.x thing. There's the perfect vacuum where versioning shouldn't be a problem, and the practical real world where knowing Python and the differences betwe…

> Interesting. Maybe we should compare notes sometimes. I have a bit of a story with finding alternative-type stuff.

I really like the theory of programming, and am constantly looking for languages that are

a) easier to write

b) amazingly expressive

Its always finding what's out there.

> - I've been contemplating tackling Python, in spite of the 2.x/3.x thing. There's the perfect vacuum where versioning shouldn't be a problem, and the practical real world where knowing Python and the differences between the two will let me actually do interesting things.

Thankfully, that's mostly gone now. Few enterprises still holding out, but most of the big libraries are 2/3 or 3 only.

And 3 is a lot more thought-out. Most of the warts are gone.

> - I completely forgot to mention Awk (!) mostly because I have no idea at what point I began to pick it up, but I did get a basic idea of how it works a while ago, and I've been factoring it into shell pipelines more frequently lately. It's great for when I need to do something that sed can't express well (and I just properly read about how match() a) returns the index and b) also works apropos to grep recently, which is great)

Awk is different, but great.

I had a boss at a previous job who'd used it for at least a decade for everything, so I had to learn the nitty-gritty.

I ended up building a CGI application that basically ran the entire website in Awk. Big learning experience, but rather cool.

> (As an aside, Lua is ~200K and awk is ~632K. That is just wrong. [Mumbling about rewrite])

Mmm. That does hurt.

But, at least Lua is an amazing language too, if a bit odd at times.

> I'm reasonably familiar with the "not wanting to count to 5" thing... heh. Interesting about the Scheme thing in that context. I'll definitely have to give it a look.

Scheme is stupid simple. Which is awesome.

Everything looks like:

( function arg arg arg )

So, Hello, World!

(display "Hello, World!")

Also, if a function ends with !, then it modifies state, and isn't really functional.

(set! varname value)

And finally, Scheme's macros are hygienic (don't interfere with variables that exist), and fairly simple:

    (define-syntax (syntax-rules (swap! x y)
      (let ([tmp x])
        (set! x y)
        (set! y tmp))))
After working a little while with it, those parenthesis won't be as scary, and you probably won't even notice them.

SICP also has lectures on Youtube [0], if you want a more formal way to get to grips with Scheme.

[0] https://www.youtube.com/watch?v=2Op3QLzMgSY

Re: What programming languages do you know and which ones do you want to learn?

#25
post #24
post #23

Earlier quoted context omitted.

> There aren't many. I say this as someone whose head also gets screwed over by health. Interesting. Maybe we should compare notes sometimes. I have a bit of a story with finding alternative-type stuff. - I've been contemplating tackling Python, in spite of the 2.x/3.x thing. There's the perfect vacuum where versioning shouldn't be a problem, and the practical real world where knowing Python and the differences betwe…

> Interesting. Maybe we should compare notes sometimes. I have a bit of a story with finding alternative-type stuff. I really like the theory of programming, and am constantly looking for languages that are a) easier to write b) amazingly expressive Its always finding what's out there. > - I've been contemplating tackling Python, in spite of the 2.x/3.x thing. There's the perfect vacuum where versioning shouldn't be…

>> I've been contemplating tackling Python, in spite of the 2.x/3.x thing. (...)

> Thankfully, that's mostly gone now. Few enterprises still holding out, but most of the big libraries are 2/3 or 3 only.

Oh okay. I think I got got mildly tangled by https://news.ycombinator.com/item?id=13019819 a little while back.

> Awk is different, but great.

> I had a boss at a previous job who'd used it for at least a decade for everything, so I had to learn the nitty-gritty.

> I ended up building a CGI application that basically ran the entire website in Awk. Big learning experience, but rather cool.

Oh nice. That's kind of awesome.

(I was referring to gawk when I mentioned the 632K thing.)

> But, at least Lua is an amazing language too, if a bit odd at times.

I seriously don't understand why they won't allow ++ and -- and similar conveniences we've grown to almost expect from other languages...

(info about (Scheme))

This syntax looks fairly familiar (Lisp syntax is after all incredibly reductionist) and I remember ! from Ruby.

> After working a little while with it, those parenthesis won't be as scary, and you probably won't even notice them.

Haha, I remember someone telling me that about {} in C-like languages (PHP) a decade ago. I still notice them... but I know where to use them and what they're for now.

I don't think my brain will sprout a number-of-closing-parens-needed checker anytime soon; https://en.wikipedia.org/wiki/Subitizing is generally established to be mentally impossible for >4 items, so... (putting (everything) in parens) is fun, but s)t))ac))))ki))n)g) the closing ones onto single lines is... well all my brain's coming up with is a slightly incredulous blank stare.

--

By the way: I'm not quite sure how relevant this is to wherever you are (which I haven't been able to concretely ascertain), but I'm in Sydney. Curious to learn how far away I am from you, perhaps via email.

(I may have poked through some of your tales... and now I have to deal with a brain that's scrambling around trying to find a signup button so I can trail along with you sometime. =P)

PS. Just hit HN's post ratelimit for the first time, which was why this took a while to appear. Sorry!

Re: What programming languages do you know and which ones do you want to learn?

#27
post #24
post #23

Earlier quoted context omitted.

> There aren't many. I say this as someone whose head also gets screwed over by health. Interesting. Maybe we should compare notes sometimes. I have a bit of a story with finding alternative-type stuff. - I've been contemplating tackling Python, in spite of the 2.x/3.x thing. There's the perfect vacuum where versioning shouldn't be a problem, and the practical real world where knowing Python and the differences betwe…

> Interesting. Maybe we should compare notes sometimes. I have a bit of a story with finding alternative-type stuff. I really like the theory of programming, and am constantly looking for languages that are a) easier to write b) amazingly expressive Its always finding what's out there. > - I've been contemplating tackling Python, in spite of the 2.x/3.x thing. There's the perfect vacuum where versioning shouldn't be…

Oh, also - by "alternative-type stuff" I was referring to alternative health. But I also like alternative/left-of-center technologies too :D

Re: What programming languages do you know and which ones do you want to learn?

#29
In the order of fluency: C#, C++, Java, Javascript, Python. I know each enough that I have pet projects in each language, not all the tricks and syntax shortcuts. I use C# almost exclusively at work. I'd like some chance to learn functional language, F# may be a start.
Post reply on HN