text: Dom's PureScript Tips and Reference Wiki
  I’m going to treat this page as a sort of wiki for PureScript tips and reference.
  Searching for Special Character Operators
  You can search Pursuit for special character operators by wrapping them in parenthesis, e.g you can search for (<$) if you don’t know that
  <$ is the same as
  voidRight, or you can search for (<|>) if you don’t know that
  <|> is the same as
  alt.
  Package Sets Organized By Project Type
  The idea of this section is to determine which packages should be the starting point for a particular project type, and of those packages, which functions should be compiled into a more easily usable Prelude.
  - Front End Single Page App
  - purescript-halogen
  - purescript-routing
  - purescript-dom
  - Any Project
  - Eff, log, logShow, CONSOLE, Maybe, Either, Tuple
  Deriving Types
  You can derive a Generic instance for simple types by doing
  derive instance someName :: Generic SomeType
  Deriving Newtypes without Type Parameters
  Sometimes Newtypes for Records don’t have a type parameter, in which case you will need to derive the instance using a typed hole, e.g.
  derive instance newtypeMyNewType :: Newtype MyNewType _
  Importing
  Data Constructors of Abstract Data Types (ADT) are imported using
  import Module (Type(..)), e.g. if you want to import the Constructors of this ADT…
  module Routes where data Location = Home | Login
  You would
  import Routes (Location(..)). Note that this is different than saying
  import Routes(Location). The first import says to import the constructors of the Location type. The second is saying to import the Location type itself.