Fork me on GitHub
#off-topic
<
2018-04-07
>
soulflyer00:04:58

@qqq Not sure I would call it trivial. Simple forth programs are just a list of words and that is easy enough, BUT iirc you get words that redefine the way words are defined. Then it can get pretty interesting.

qqq02:04:08

I'm talking about decompilation, not comprehension. Most Forth 'compilers' I have read about are more like "interpreters" with the word definitions -- this seems much easier to recover the source from compared to, say, cljs :optimization :advanced .

tbaldridge03:04:27

@qqq, that can be true, but forth is also very low level, so I think it would be a bit hard to recover the output of a compiled forth program. It'd basically look like a pile of jumps and addresses

tbaldridge03:04:30

Forth interpreters do have the dispatch of looking up a global name, and finding the location to jump to. Remove that, and replace it with just the jump locations and now have pretty unreadable code

qqq04:04:22

@tbaldridge: I see, so once laundry = clothes get basket put-in downstairs goto washer put-in wash washer get-from dryer put-in dryer get-from upstairs goto becomes loc 79 = jump 23 489 298 . 4389 2 3 4 1 9 loc 23 = jump ... then it's not very easy to 'read back'

tbaldridge04:04:32

right, and add in direct threaded code (as shown here: https://www.sifflez.org/lectures/ASE/C3.pdf starting at slide 8 ) and its even worse

Surya Poojary04:04:54

Can anyone become a programmer even if he/she has not written a single line of production code ?

seancorfield05:04:22

@suryabinary That's an interesting question. I think "anyone" can learn programming to some level. But being a programmer as a career? There are a lot of things that go into being a professional programmer...

seancorfield05:04:36

...my wife, for example, can design data models, and complex mathematical and statistical systems, but when it comes down to actual coding, by her own admission, she's pretty hopeless (and she hates how fussy most programming languages are about syntax).

seancorfield05:04:41

On the other hand, I've run into a lot of people who can code just fine, but they have no grasp of system design or software architecture so what they build is an unmaintainable mess (but a lot of those folks can still make a living at it!).

Surya Poojary05:04:53

@seancorfield brilliant answer

Surya Poojary05:04:19

Im in the commerce stream ..i got interested in programming last year..and I have tried some of the most well known languages..grasped the fundamentals..but I know I'm not at a professional level to code for a Living..so I intend to do marketing for a living and do code as a hobby

seancorfield05:04:23

Every professional programmer was a beginner once -- coding as a hobby is a good way to get started. It takes a certain amount of persistence to stick at coding and learning and improving.

👍 2
Surya Poojary05:04:55

I tend to switch to other languages when things get tough

Surya Poojary05:04:00

Pretty bad habit

seancorfield05:04:21

I got into programming via a programmable calculator back in the day. You couldn't do much with it, but it piqued my interest, so when I went to university, I chose math + comp sci and played around with lots of different languages. I liked some more than others.

Surya Poojary05:04:36

👍 👍 👍

Surya Poojary05:04:50

I have to credit python to teach me how to code

seancorfield05:04:09

Python's a nice language. I was curious about it and PyCon was local to me in 2013 so I bought a ticket and enjoyed learning all about it. I'd never written a line of Python before that!

Surya Poojary05:04:47

Yea..it's super fun

orestis05:04:41

@suryabinary you might be interested in the #programming-beginners channel

👍 1
seancorfield05:04:43

@suryabinary I just answered your :aot :all question in #beginners -- looked like that went unanswered earlier.

sveri10:04:18

@suryabinary Going through different programming languages is by no means a problem in the beginning I would say. You might be a bit more confused. But as programming languages have so much in common you will find the same concepts again and again and then one day it will just click for the most parts. At the same time you will also start to see the differences and that every programming language has a few distinctive features, which are the reason for their existence.

☝️ 1
👍 1
sveri10:04:53

Just take it easy on you, one can get frustrated fast and if that happens take a break, free your mind until you are ready to get started again.

schmee11:04:17

^ this 👏

souenzzo14:04:19

what are the (best) options of http asynchronous clients in clojure / java?

schmee14:04:29

@souenzzo I’ve used https://github.com/dakrone/clj-http and it gets the job done

👍 4
borkdude18:04:21

@souenzzo Aleph is also an option. I use it in conjuction with yada which are both based on Manifold deferreds.

❤️ 2