Ticket #29 (new defect)

Opened 5 years ago

Last modified 5 years ago

join is broken for events

Reported by: greenrd Owned by:
Priority: major Milestone:
Version: Keywords:
Cc:

Description

In GHCi:

Prelude FRP.Reactive.Reactive Control.Monad Control.Applicative> join $ return (empty :: Event ())
Loading package syb ... linking ... done.
Loading package base-3.0.3.1 ... linking ... done.
Loading package array-0.2.0.0 ... linking ... done.
Loading package old-locale-1.0.0.1 ... linking ... done.
Loading package old-time-1.0.0.2 ... linking ... done.
Loading package random-1.0.0.1 ... linking ... done.
Loading package filepath-1.1.0.2 ... linking ... done.
Loading package unix-2.3.2.0 ... linking ... done.
Loading package directory-1.0.0.3 ... linking ... done.
Loading package process-1.0.1.1 ... linking ... done.
Loading package haskell98 ... linking ... done.
Loading package mtl-1.1.0.2 ... linking ... done.
Loading package MemoTrie-0.4.5 ... linking ... done.
Loading package containers-0.2.0.1 ... linking ... done.
Loading package pretty-1.0.1.0 ... linking ... done.
Loading package Cabal-1.6.0.3 ... linking ... done.
Loading package bytestring-0.9.1.4 ... linking ... done.
Loading package hpc-0.5.0.3 ... linking ... done.
Loading package packedstring-0.1.0.1 ... linking ... done.
Loading package template-haskell ... linking ... done.
Loading package ghc-6.10.4 ... linking ... done.
Loading package category-extras-0.53.5 ... linking ... done.
Loading package lazysmallcheck-0.3 ... linking ... done.
Loading package unamb-0.2.2 ... linking ... done.
Loading package vector-space-0.5.7 ... linking ... done.
Loading package QuickCheck-2.1.0.2 ... linking ... done.
Loading package TypeCompose-0.6.7 ... linking ... done.
Loading package checkers-0.2.4 ... linking ... done.
Loading package Stream-0.3.2 ... linking ... done.
Loading package reactive-0.11 ... linking ... done.
Event: *** Exception: BothBottom

join . return should be equal to id

Change History

Changed 5 years ago by greenrd

Also, possibly related:

Prelude Control.Monad Control.Applicative FRP.Reactive.Reactive> listE [(2,())] <|> (return undefined =<< listE [(2,())]) 
Event: *** Exception: BothBottom

I think this should produce the left occurrence at least, because any occurrences coming from the right (although we know there aren't any) should be at time >=2, so the left occurrence must come first.

Note: See TracTickets for help on using tickets.