Package

scalaz

example

Permalink

package example

Visibility
  1. Public
  2. All

Type Members

  1. sealed trait Token extends AnyRef

    Permalink

Value Members

  1. object A extends Token with Product with Serializable

    Permalink
  2. object AdjunctUsage extends App

    Permalink
  3. object ApplyUsage extends App

    Permalink
  4. object ArrowUsage extends App

    Permalink
  5. object B extends Token with Product with Serializable

    Permalink
  6. object BifunctorUsage extends App

    Permalink

    A Bifunctor is very similar to a Functor, which you are hopefully already familiar with.

    A Bifunctor is very similar to a Functor, which you are hopefully already familiar with. Whereas a Functor operates on a * → * and has a single operation map which takes a function from A => B to map a F[A] to a F[B], a Bifunctor operates on a *,* → * and has a single operation bimap which takes two functions: A ⇒ C and a B ⇒ D to map a F[A,B] to a F[C,D]:

    def bimap[A, B, C, D](fab: F[A, B])(f: A => C, g: B => D): F[C, D]

    some examples of common types for which we have Bifunctor instances are Either, Validation, \/, Tuple2

  7. object C extends Token with Product with Serializable

    Permalink
  8. object CABRunLengthEncoder

    Permalink
  9. object CaseInsensitiveUsage extends App

    Permalink
  10. object ContravariantCoyonedaUsage extends App

    Permalink
  11. object DirectTypeClassUsage extends App

    Permalink
  12. object DivideExample

    Permalink
  13. object EndoUsage extends App

    Permalink
  14. object EnumUsage extends App

    Permalink
  15. object FibStateExample extends App

    Permalink
  16. object FingerTreeUsage extends App

    Permalink
  17. object Foldable1Usage extends App

    Permalink
  18. object FoldableUsage extends App

    Permalink
  19. object FreeApUsage extends App

    Permalink
  20. object FreeUsage extends App

    Permalink
  21. object FunctorUsage extends App

    Permalink

    A Functor is a ubiquitous typeclass involving type constructors of kind * → *, which is another way of saying types that have a single type variable.

    A Functor is a ubiquitous typeclass involving type constructors of kind * → *, which is another way of saying types that have a single type variable. Examples might be Option, List, Future.

    The Functor category involves a single operation, named map:

    def map[A, B](fa: F[A])(f: A => B): F[B]

    This method takes a Function from A => B and turns an F[A] into an F[B]

  22. object IListUsage extends App

    Permalink
  23. object IsomorphismUsage extends App

    Permalink
  24. object IterateeUsage extends App

    Permalink
  25. object KleisliUsage extends App

    Permalink
  26. object LaunchburyInterpreter extends App

    Permalink

    Simple call-by-need (i.e.

    Simple call-by-need (i.e. lazy) interpreter for Lambda Calculus based off of John Launchbury's "A Natural Semantics for Lazy Evaluation" Uses the "Barendregt convention": All variable names are globally unique (i.e. you cannot shadow variable names), and renames variables after substitution to maintain this invariant.

  27. object MixedBag extends App

    Permalink
  28. object NameNeedValueUsage extends App

    Permalink
  29. object NewTypeUsage extends App

    Permalink
  30. object PartiallyApplied extends App

    Permalink
  31. object ReaderWriterStateTUsage extends App

    Permalink
  32. object STUsage extends App

    Permalink
  33. object StateTUsage extends App

    Permalink
  34. object StringUsage extends App

    Permalink
  35. object SyntaxUsage extends App

    Permalink
  36. object TagUsage extends App

    Permalink

    scalaz contains a way to simulate something similar to a Haskell newtype, where we can take an existing type, and create a new type from it, and allow us to create new typeclass instances for our newly created type to get different behaviors.

    scalaz contains a way to simulate something similar to a Haskell newtype, where we can take an existing type, and create a new type from it, and allow us to create new typeclass instances for our newly created type to get different behaviors. The same thing could be done with scala 2.10's Value Classes: http://docs.scala-lang.org/overviews/core/value-classes.html however one has to be very careful when using value classes, because there are a lot of instances in which using a value class will incur a runtime boxing/unboxing of your value, which incurs a runtime cost. The scalaz tagged types will never cause boxing of a value.

  37. object Token

    Permalink
  38. object TrampolineUsage extends App

    Permalink
  39. object TraverseUsage extends App

    Permalink
  40. object UnapplyInference extends App

    Permalink

    Examples showing the use of Unapply to reduce the need for type annotations

  41. object WordCount

    Permalink

    Character/Line/Word Count from "The Essense of the Iterator Pattern".

    Character/Line/Word Count from "The Essense of the Iterator Pattern".

    See also

    http://www.comlab.ox.ac.uk/jeremy.gibbons/publications/iterator.pdf

  42. object WriterUsage extends App

    Permalink
  43. package concurrent

    Permalink
  44. package transformers

    Permalink

Ungrouped