[Python-ideas] Is there a good reason to use * for multiplication?

Mathias Panzenböck grosser.meister.morti at gmx.net
Sat Oct 13 22:33:56 CEST 2012


On 10/13/2012 06:20 AM, Bruce Leban wrote:
> Well, I learned x as a multiplication symbol long before I learned either · or *, and in many fonts
> you can barely see the middle dot. Is there a good reason, we can't just write foo x bar instead of
> foo * bar? If that's confusing we could use × instead. No one would ever confuse × and x.
>
> Or for that matter how about (~R∊R∘.×R)/R←1↓⍳R
>

On related news: The source code of the APL complier (interpreter?) was released.
http://www.osnews.com/story/26464/The_APL_programming_language_source_code

I'm still baffled that this programming language was ever in production use.

> Seriously: learning that * means multiplication is a very small thing. You also need to learn what
> /, // and % do, and the difference between 'and' and &, and between =, ==, != and /=.
>
> --- Bruce
>
>
>
> On Fri, Oct 12, 2012 at 7:41 PM, Steven D'Aprano <steve at pearwood.info <mailto:steve at pearwood.info>>
> wrote:
>
>     On 13/10/12 07:27, Ram Rachum wrote:
>
>         Hi everybody,
>
>         Today a funny thought occurred to me. Ever since I've learned to program
>         when I was a child, I've taken for granted that when programming, the sign
>         used for multiplication is *. But now that I think about it, why? Now that
>         we have Unicode, why not use · ?
>
>     t
>     25 or so years ago, I used to do some programming in Apple's Hypertalk
>     language, which accepted ÷ in place of / for division. The use of two
>     symbols for the same operation didn't cause any problem for users. But then
>     Apple had the advantage that there was a single, system-wide, highly
>     discoverable way of typing non-ASCII characters at the keyboard, and Apple
>     users tended to pride themselves for using them.
>
>     I'm not entirely sure about MIDDLE DOT though: especially in small font sizes,
>     it falls foul of the design principle:
>
>     "syntax should not look like a speck of dust on Tim's monitor"
>
>     (paraphrasing... can anyone locate the original quote?)
>
>     and may be too easily confused with FULL STOP. Another problem is that MIDDLE
>     DOT is currently valid in identifiers, so that a·b would count as a single
>     name. Fixing this would require some fairly heavy lifting (a period of
>     deprecation and warnings for any identifier using MIDDLE DOT) before
>     introducing it as an operator. So that's a lot of effort for very little gain.
>
>     If I were designing a language from scratch today, with full Unicode support
>     from the beginning, I would support a rich set of operators possibly even
>     including MIDDLE DOT and × MULTIPLICATION SIGN, and leave it up to the user
>     to use them wisely or not at all. But I don't think it would be appropriate
>     for Python to add them, at least not before Python 4: too much effort for too
>     little gain. Maybe in another ten years people will be less resistant to
>     Unicode operators.
>
>
>
>     [...]
>
>         ·. People on Linux can type Alt-. .
>
>
>     For what it is worth, I'm using Linux and that does not work for me. I am
>     yet to find a decent method of entering non-ASCII characters.
>
>
>
>     --
>     Steven
>
>     _________________________________________________
>     Python-ideas mailing list
>     Python-ideas at python.org <mailto:Python-ideas at python.org>
>     http://mail.python.org/__mailman/listinfo/python-ideas
>     <http://mail.python.org/mailman/listinfo/python-ideas>
>
>
>
>
> _______________________________________________
> Python-ideas mailing list
> Python-ideas at python.org
> http://mail.python.org/mailman/listinfo/python-ideas
>




More information about the Python-ideas mailing list