
It sure does seem crowded around there. I'd love to have 4.5 or 5.5. Going up to 6 runs into arithmetic. Going down to 4 hits up against Functor and Applicative stuff, which is a tad unfortunate but I think probably not as bad in practice. So I think I'll go with 4 and 5. Thanks, y'all! On Sun, Aug 16, 2020, 1:04 AM Henning Thielemann < lemming@henning-thielemann.de> wrote:
On Sat, 15 Aug 2020, David Feuer wrote:
Data.Sequence uses the same precedence for both, which strikes me as a bit sad. Surprisingly, I am not seeing other packages on Hackage that define similar operators.
I have the same problem in the 'lapack' bindings.
I like to allow people to write
(row) vector -*# matrix #*# matrix #*| (column) vector
I had no good idea, though, and also chose equal precedence for all operators.
On Thu, Aug 13, 2020 at 2:50 PM Andreas Abel
wrote: My hunch would be too look at what the others do to form an opinion.
On 2020-08-13 19:26, David Feuer wrote:
I'm trying to work out appropriate precedences for operators and
pattern
synonyms in my brand-new compact-sequences package. I currently have stacks and queues, but I will soon have deques, so let's pretend. For consistency, operators will match pattern synonyms.
(<|), pattern (:<) :: a -> Deque a -> Deque a (|>), pattern (:>) :: Deque a -> a -> Deque a
:< and :> need to have different precedence to allow things like
a :< b :< xs :> c :> d
to work nicely, but what numbers should I pick?
I also have cons and snoc functions. Should I give their backticked spellings fixity declarations? If so, with what precedences?
I would give them the precedence of their infix counterparts.