Intro to Hoon Club Hoon is devilishly hard to learn ... and yet, having 90% learned it, I have this experience over and over and over of "holy crap, now that I FINALLY GET IT, this wasn't hard at all. Why did that concept take me 20 hours?" Talking w other Hoon programmers, this is not abnormal...in fact, it IS the norm. Hoon is hard to learn for a few reasons: * weird syntax * the weird syntax is made worse because there IS a regular syntax, but most of the docs use the advanced labor-saving irregular syntax...which makes it much much harder to build a conceptual model * very very bad (actively malicious) documentation * it's functional programming, which most of us are not used to * weird type system * weird data structure / model * concepts do not line up neatly with concepts in other languages. * refusal of documentation writers to use existing normal terms * circular definitions * documentation written for computer scientists, not working engineers * documentation written as REFERENCE documentation / a standard, not as a tutorial * large gaps on the rungs of the ladder Explanations like the following are common: "A wing is a path that selects a face of a hoon, but if the wing selects buc it fires the arm. A hoon is just an AST." Stare at this for an hour. You will not learn ANYHTHING. Now go an ask a typical hoon programmer for an explanation. E.g. "What's an arm?" Answer: "Oh, an arm is just a Hoon. It's at axis 2 if it's buc." Let's continue the dialogue. Q: "What is axis 2?" A: "It's the battery." Q: "What's the battery?" A: "It's where the arms live, at axis 2." Q: "OK, fine, I'll just accept the 'axis 2' thing. Is this always true?" A: "Well, if it's a core. And axis 2 is either where buc lives or where both the list of arms is anchored in the hoon". It's !@#$-ed Martian. ...and not in a good way. I am going to teach Hoon as best I can. I will strive to NOT do the above. The general structure: * I will introduce a few topics, and give BRIEF overviews of them. Then I will circle back to each of these topics, going into more depth. XXX add a "motivations" section here!