It's no different from english or probably most other languages if you think every character is a primitive.
Example: word.new("T", "E", "A") would be equivalent to word.new("牛").
Then word.new(word.new("T", "E", "A"), word.new("S", "P", "O", "O", "N")) would be equivalent to word.new(word.new("牛"), word.new("肉")).<p>Next concept the author mixed is working with the verbs, verb.new(word.new("E", "A", "T")).PastTense() would give you "ate"
Just like verb.new(word.new("食", "べ", "る")).Polite().Past() would output "食べました"<p>Then working with sentences, ex: Topic.new("me").toString() would be just "meは"...
Put it all together and output everything subject > object > verb, instead of the more familiar subject > verb > object.<p>The author mixed a lot of those grammar concepts, with the words etymology... and it got confusing.<p>"2 kanjis becoming 1" is just the radical.
涙 (tear) 汗 (sweat) 泳ぐ (swim) 沈む (sink) 溺れる (drown), they all share the same radical (氵/sanzui/mizu/water). While it's not a rule, they are likely to have some relation to it.
Just like in english waterfall, waterproof, waterspout, watermelon, etc.<p>I like the fact that the author is fascinated by the Japanese language and wants to share his discoveries. I guess everybody learning a seemingly completely new (unrelated to anything you know), experiences a similar phase.
In his case he found similarities with a programming language. And I guess we all do that, we connect the things we're learning to the things we already know.<p>Someone learning english would probably be equally amazed by the watermelon. I mean... It's not so surprising if watermelon in your native language is, let's say: Melancia (portuguese). It takes half of the discovery surprise from you, as you already could suppose it's melon related.<p>I can't deny, "Fire + Mountain = Vulcan" was awesome to me as well.
Learning that "Vulcan = god of fire in ancient roman mythology" does not hit me the same way, I already expect it to be greek/roman/latin.