#group extensions/implicitparams #test ImplicitParams 1 {-# LANGUAGE ImplicitParams #-} func :: (?asd::Int) -> () #test ImplicitParams 2 {-# LANGUAGE ImplicitParams #-} func :: ( ?asd :: lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd -> lkasdlkjalsdjlakjsdlkjasldkjalskdjlkajsd ) -> () #test IP usage {-# LANGUAGE ImplicitParams #-} foo = ?bar #test IP binding {-# LANGUAGE ImplicitParams #-} foo = let ?bar = Foo in value #test IP type signature {-# LANGUAGE ImplicitParams #-} foo :: (?bar::Bool) => () foo = ()