My take on this is that 3e+1 has become a standard notation for numbers in programming languages. I'm comfortable having that as an exception to the concise multiplication syntax.
Hex float literals are a different story. It's an understatement to say they are VERY rarely used, and that most programmers don't need them and have never heard of them. They also don't currently work under MSVC (issue #6349). We have not had them very long. I say we remove them. They can be replaced with a custom string literal. We might be able to find a more scalable syntax for different types of numbers. For example the syntax x@000 is available; `@ then digit` is always a syntax error currently. On Mon, Jan 5, 2015 at 2:40 PM, Viral Shah <[email protected]> wrote: > There is also an issue filed: > > https://github.com/JuliaLang/julia/issues/9617 > > -viral > > > On Tuesday, January 6, 2015 12:29:33 AM UTC+5:30, Peter Mancini wrote: >> >> No. I'm tongue in cheek pointing out the absurdity of the situation. >> >> On Monday, January 5, 2015 12:57:45 PM UTC-6, Hans W Borchers wrote: >>> >>> Does this mean you suggest to disallow variables names 'e', 'f', 'p' (and >>> possibly >>> others) in a programming environment for scientific computing? Hard to >>> believe. >>> >>> >>> On Monday, January 5, 2015 7:41:49 PM UTC+1, Peter Mancini wrote: >>>> >>>> That is a case of e being overloaded. It helps with the OP's issue >>>> though. For the scientific notation issue I would suggest choosing which is >>>> more useful, natural e or using e for a base ten exponent. >>>> >>>> On Monday, January 5, 2015 12:22:11 PM UTC-6, Stefan Karpinski wrote: >>>>> >>>>> On Mon, Jan 5, 2015 at 12:55 PM, Peter Mancini <[email protected]> >>>>> wrote: >>>>>> >>>>>> Usually a language handles this problem by making the constants such >>>>>> as p and e as reserved. Thus you can't create a new variable with those >>>>>> names and since they are constant you can't assign to them without >>>>>> raising >>>>>> an error. >>>>> >>>>> >>>>> That doesn't help here since `2e+1` would still mean something >>>>> different than `2e + 1`.
