3 ms·
> when will array enthusiasts understand that having first letter A does not mean the language should be aimed at Aliens? […] get over your "code golf" tendenci
by dspillett 3y ago
> when will array enthusiasts understand that having first letter A does not mean the language should be aimed at Aliens? […] get over your "code golf" tendencies
I've always assumed that people working on these languages come from a heavy maths background, so to them the sequence of symbols is more “naturally” readable. So saying “if array language people used words I'd understand better” is not unlike saying “if the Chinese would only speak English there would be less language barriers”. Not wrong, of course, but perhaps not a reasonable expectation.
- sethammons 3y agoEnglish is the langua franca of programming. If you want your solution accepted, you have to meet your audience where they are. In similar fashion, when engines were first invented and were being sold to miners, they didn't expect miners to understand the scientific terms around energy, they invented a term that could be easily understood: horsepower. Every miner could wrap their head around the work that twenty horses could do. Here, x̄ or μ may mean average, but how do you pronounce either? Most are unfamiliar. Identifiers "avg()" or "average()" are more approachable, and already in use in spreadsheets for similar reasons.
- aleph_minus_one 3y ago> English is the langua franca of programming. I am not an English native speaker, but learned programming before even starting with learning English. In my head, the English keywords used in programming languages are thus just abstract (mathematical) symbols that are incidentally also English words. As part of my work, I also work with Russian programmers, who, as long as they lived in Russia, hardly ever had to understand anything in English as part of their programming job ("Russia is so big that it is not necessary to learn English"). Just to be clear: they nevertheless attempted to learn English while living in Russia, but because of of intellectual interest, and not because it was necessary or helpful for their programming jobs. I heard rumors that a similar stance holds for China. Thus: English may be the lingua franca of programming in North America and some European countries, but clearly not worldwide.
- jventura 3y ago> Thus: English may be the lingua franca of programming in North America and some European countries, but clearly not worldwide. So, you don't have "for" or "while" loops where you live? Not even a "main" function?
- falserum 3y agoRelevant part of the comment > the English keywords used in programming languages are thus just abstract (mathematical) symbols that are incidentally also English words Explanation: People learn python without understanding meaning of keywords used. One must understand what ‘for’ means in python (i.e. repeated execution), but there is absolutly no necessity to understand what it means in English ( https://www.merriam-webster.com/dictionary/for https://www.merriam-webster.com/dictionary/for )
- blacklion 3y agoSorry, but mathematics notation is not THAT cryptic. Yes, it prefer single-letter variables, but there are not a lot of special notation. Summation (Capital Sigma), Multiplication (Capital Pi), integration, roots. Limit? "lim". Logarithm? "log", etc. It is not like 50 glyphs of array languages. It is maybe 5 glyphs and 10 other conventions (like division over-under, root and power). Also, mathematics notation is 2D and multi-size (capital sigma is much larger than variable names and numbers, summation indices on under and over sigmas is much smaller) which helps immensely. Same formula written in one font in one line will be much less comprehensible. UPDATE: Yes, I forogot about E-inverted (exists) and A-inverted (for all), and two or three common operators related to sets (includes, subset), but they are not needed for calculations even in math, only for theorems. And array languages are not theorem proofers. Each area of math could have its own special notations too, but I don't expect that category theory specialist will understand notation of very specialized complex functions paper.
- dspillett 3y agoWhen I say “from a heavy maths background” I mean more than arithmetic, basic algebra, calculus and such. Set theory has quite a dictionary of symbols & conventions and I assume a lot of the array language terminology/symbols comes from there, complexity theory has some of its own too, and so forth. Take a look at some substantive mathematical proofs in various areas and tell me there are only 15 glyphs/conventions that are commonly used! > Sorry, but mathematics notation is not THAT cryptic. It can certainly be that information dense. Whether that is considered cryptic or not is in the eye of the beholder. > It is maybe 5 glyphs and 10 other conventions Heck, we've got more than 5 glyphs just for expressing (in)equality: =, ≡, <, >, ≤, ≥, ≠, ≢, ≈ (and those are just from memory of doing maths to A-level nearly three decades ago, a couple of years of CompSci after that, & programming since, and that isn't touching on symbol sets from subsets of mathematics like set theory). > Each area of math could have its own special notations too, but I don't expect that category theory specialist will understand notation of very specialized complex functions paper. While each area will have specialist notation that is not commonly understood by those unfamiliar with the area, most maths people will understand a chunk of the notation from a number of areas. I don't consider myself a maths person and I know the basic glyphs from a couple of areas when I see them.
- jimbokun 3y agoIf the language looked more like type set mathematical notation it would be much more approachable.