Can't compile Diagrams tutorial example

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Can't compile Diagrams tutorial example

Roger Mason
Hello,

I have the following code from the Diagrams package tutorial:

> {-# LANGUAGE NoMonomorphismRestriction #-}
>
> import Diagrams.Prelude
> import Diagrams.Backend.SVG.CmdLine

> main = mainWith (example :: Diagram B R2)
> example = circle 1 # fc blue
>                    # lw veryThick
>                    # lc purple
>                    # dashing [0.2,0.05] 0

I get the following error on compilation using GHC 7.6.3:

ghc --make DiagramsTutorial-2.lhs

[1 of 1] Compiling Main             ( DiagramsTutorial-2.lhs, DiagramsTutorial-2.o )

DiagramsTutorial-2.lhs:10:33:
    Could not deduce (Fractional (Measure R2))
      arising from the literal `0.2'
    from the context (TrailLike b,
                      Transformable b,
                      HasStyle b,
                      V b ~ R2)
      bound by the inferred type of
               example :: (TrailLike b, Transformable b, HasStyle b, V b ~ R2) =>
                          b
      at DiagramsTutorial-2.lhs:(7,3)-(10,43)
    Possible fix:
      add an instance declaration for (Fractional (Measure R2))
    In the expression: 0.2
    In the first argument of `dashing', namely `[0.2, 0.05]'
    In the second argument of `(#)', namely `dashing [0.2, 0.05] 0'

DiagramsTutorial-2.lhs:10:43:
    Could not deduce (Num (Measure R2)) arising from the literal `0'
    from the context (TrailLike b,
                      Transformable b,
                      HasStyle b,
                      V b ~ R2)
      bound by the inferred type of
               example :: (TrailLike b, Transformable b, HasStyle b, V b ~ R2) =>
                          b
      at DiagramsTutorial-2.lhs:(7,3)-(10,43)
    Possible fix: add an instance declaration for (Num (Measure R2))
    In the second argument of `dashing', namely `0'
    In the second argument of `(#)', namely `dashing [0.2, 0.05] 0'
    In the expression:
      circle 1 # fc blue # lw veryThick # lc purple
      # dashing [0.2, 0.05] 0

Thanks for any help.

Roger

Reply | Threaded
Open this post in threaded view
|

Can't compile Diagrams tutorial example

Roger Mason
Hello,

Roger Mason <rmason at mun.ca> writes:

> I have the following code from the Diagrams package tutorial:
>
>> {-# LANGUAGE NoMonomorphismRestriction #-}
>>
>> import Diagrams.Prelude
>> import Diagrams.Backend.SVG.CmdLine
>
>> main = mainWith (example :: Diagram B R2)
>> example = circle 1 # fc blue
>>                    # lw veryThick
>>                    # lc purple
>>                    # dashing [0.2,0.05] 0
>
> I get the following error on compilation using GHC 7.6.3:

Found the problem:

    # dashing [0.2,0.05] 0

should read

    # dashingG [0.2,0.05] 0

Sorry for the noise.

Roger