Twenty years ago, it was a common assumption in Japan that, programming languages being non-human languages anyway, English was the "proper" context language for all programming. The assumptions was so strong and ingrained that I was never able to sell my idea for a pre-processor for C that would allow the use of Japanese symbols, using headers that would contain suitable mappings between Japanese and English based variable, function, and macro names.Ten years ago, Japanese people who used the internet could (more or less) read English, and Latinized (romaji) spellings of Japanese used in urls didn't cause many problems either.
I think I have identified several reasons for that attitude.
One, of course, is that programmers tended to be not overly worried just by the mere sight of stuff that isn't their native language. (Not to say that they are all in love with the English language, just that they are not immediately threatened by discrete foreign symbols.)
Another is that it is (perversely) comfortable for them (and us, too) to isolate the entire technical context from their (our) day-to-day world. And English based symbols helps the isolation when English is not your native language.
Yeah, that's what I do for a living these days.These days, ordinary Japanese people use the internet, and the latin basic set urls are just as meaningless as telephone numbers to them. Less, perhaps. (Yeah, they get force-fed English in primary grades, but that doesn't mean it is even comfortable for them to "read" -- and comprehend -- new combinations of romaji.)
(Not much of a living, and, even though I enjoy the work, I have to either change jobs or ask my poor wife to take full-time work. No money in it, no way to certify and get the same pay package that people born in Japan get. Without the bonuses, insurance, Japanese version of tenure, retirement plans, etc., no way to support even just two children through high school. You AET/ALTs who think you want to marry someone Japanese, be warned. You will have to find some other way to make a living, usually just when you get to where you can actually do the AET/ALT job reasonably well.)
Well, I try to avoid the force-feeding approach, but some of the students just aren't ready or interested. There are more teachers like me these days, who can make English less threatening, less of a trial and tribulation, more interesting, more fun. But we each have differing abilities to reach students, and there will always be at least one or two in ten who will not like English. No surprise, there, since even in the US there are students who don't like English.
Heh. I didn't like English in the primary grades. Not until my junior year in high school.
At any rate, the role of Japanese in URLs is not exactly limited to syntactic sugar.
Katakana is a kind of box-character phonetic writing system. These days it is primarily used for foreign (borrowed) words and emphasis. Kind of like italics are used in English. Hiragana, on the other hand, is more of a cursive phonetic writing system.On the other hand, simply allowing Kanji to be used in urls is going to create as many problems as it solves. It would be almost easy to fold hiragana and katakana, but not even possible to fold kanji and kana. As a result, the ads you see in trains tend to show the katakana or hiragana for a company's name in a search box, with the search button being clicked.
The two sets of characters are almost corollary, but native Japanese doesn't have certain sounds that are common in some languages, so there are a few characters (voiced "u", for instance) that exist in the katakana but not in the hiragana.
(I personally would like to research a reformed kana syllabary where all the permutations exist in both sets, but that sort of thing is definitely not in the standard Japanese character sets at this point.)
Just an aside, the roles of katakana and hiragana relative to foreign words sort of reversed before World War One and reversed back after WW II, in the processes of standardization.
And, lest we forget kanji, almost every kanji has more than one pronunciation. And almost every pronunciation that can be mapped to a kanji or a string of kanji has more than one mapping. Endemic one-to-one.
That's such an important rule. It's founded in mathematics, or, at least, provable with advanced mathematics. So many wars and other social problems could be avoided and/or solved if we would all postpone our efforts to solve other people's problems until after we had solved our own.As Paul points out, we should solve our problems in the local context first, since it's the one we best understand, and the one we probably need most to work in.
Not talking about helping other people, taking about trying to solve their problems for them.
APIs -- Application Programming Interfaces. These are the methods and definitions that a program module presents to the outside world, the interface by which the outside world "uses" or interacts with the module.And then we try to figure out how to get things working in a broader context, and at some point we have to resort to a layer of translations (a human version of an API, perhaps?).
Mechanical, as in a context-free grammar or a state machine, with simple, straightforward rules that can generally be analyzed in a finite amount of time.And our minds tend to handle so much of this so well, that it's often a surprise how much detail you have to add to mechanical rules.
This is the realm of the real world, unprovable systems that we use because, even though they are not proven, they seem to work.And then there are problems that you just have to leave unsolved (and hope something works out), like the issues with Japanese in urls. And that's when there are no bugs.
Which is a long rant, just to say that, no matter how hard we try, the real world is never going to match our ideals.
I'm not saying we should give up on our ideals. But we do need a certain amount of flexibility to get along in the real world, including the flexibility to sometimes refine or even re-define our ideals.
The real world will always have plenty of problems to present us.