Skip to content

Instantly share code, notes, and snippets.

View sheaf's full-sized avatar

sheaf sheaf

View GitHub Profile
@sheaf
sheaf / Shape.hs
Last active February 12, 2020 15:03
{-# LANGUAGE AllowAmbiguousTypes #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DeriveFoldable #-}
{-# LANGUAGE DeriveFunctor #-}
{-# LANGUAGE DeriveTraversable #-}
{-# LANGUAGE DerivingVia #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE InstanceSigs #-}
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE KindSignatures #-}
{-# LANGUAGE PolyKinds #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE TypeApplications #-}
{-# LANGUAGE TypeOperators #-}
module Tuple where
module Main where
import Prelude hiding((*>), (<*))
type V3 = (Double, Double, Double)
infixl 6 <+>, <->
infixl 7 <.>
infix 8 <*, *>
@sheaf
sheaf / bug.hs
Created December 17, 2017 15:19
{-# LANGUAGE ScopedTypeVariables #-}
data I = I
class Inhabited t where
inhabitant :: t
instance Inhabited I where
inhabitant = I