These programs are safe to refactor:
object p1 {
val x = 1 + 123
val y = 1 + 123
}| import eu.timepit.refined._ | |
| import eu.timepit.refined.api._ | |
| import eu.timepit.refined.auto._ | |
| import eu.timepit.refined.numeric._ | |
| import eu.timepit.refined.boolean._ | |
| import eu.timepit.refined.char._ | |
| import eu.timepit.refined.collection._ | |
| import eu.timepit.refined.generic._ | |
| import eu.timepit.refined.string._ |
| import cats.implicits._ | |
| import org.joda.time.DateTime | |
| import tv.spotx.ironbark.druid.{DimensionMetadata, MeasurementMetadata, Schema} | |
| import tv.spotx.ironbark.syntaxtree.druid.DruidQuery | |
| import tv.spotx.ironbark.validation.Err.{Errs, MaybeValid} | |
| object Test extends App { | |
| // case class AuthCheck[+A](authorize: UserEntities => Either[Errs, (A, UserEntities)]) |
| Loading... | |
| Welcome to the Ammonite Repl 1.3.2 | |
| (Scala 2.12.7 Java 1.8.0_212) | |
| If you like Ammonite, please support our development at www.patreon.com/lihaoyi | |
| @ import $ivy.`org.scala-lang.modules::scala-parser-combinators:1.1.2` | |
| import $ivy.$ | |
| @ { | |
| sealed trait Expr | |
| case class Term(term: String) extends Expr |
| Calling approve | |
| [Debug] [Morley.Client.TezosClient.Impl.getAlias#254] Getting an alias for tz1TfLF61NboKZYbU7hxX3C1jXw45im6d8Kt | |
| [Debug] [Morley.Client.TezosClient.Impl.callTezosClient#447] Running: tezos-client -A carthage.testnet.tezos.serokell.team -P 8732 --mode mockup list known contracts | |
| [Debug] [Morley.Client.TezosClient.Impl.callTezosClient#453] stdout: | |
| nettest.Stablecoin.Stablecoin FA1.2: KT1GrQC4nGZckcfeCtLu2sKphsNsoxUoLNtK | |
| nettest.Stablecoin.natConsumer: KT1GdZ9EoAY2o5jHN2x4rACwTDAwcCGZV7bn | |
| helper: KT1DW3Fq5m7q1bn8QgjhSX9iEwcBAK82bva6 | |
| nettest.Stablecoin.chainIdContract: KT1KUhbZCatB5X6svDpXJ4gAX5a9X1LyU2yv | |
| nettest.Stablecoin.permitCounterConsumer: KT1AihogGMjD3R8y5TK31Z6iJKXwCThK4i5D | |
| nettest.Stablecoin.nettest.Stablecoin: KT1HBxv2cjKjY1nWALMbKKMdsymrdTf8hxtG |
| Calling approve | |
| [Debug] [Morley.Client.TezosClient.Impl.getAlias#254] Getting an alias for tz1TfLF61NboKZYbU7hxX3C1jXw45im6d8Kt | |
| [Debug] [Morley.Client.TezosClient.Impl.callTezosClient#447] Running: tezos-client -A carthage.testnet.tezos.serokell.team -P 8732 --mode mockup list known contracts | |
| [Debug] [Morley.Client.TezosClient.Impl.callTezosClient#453] stdout: | |
| nettest.Stablecoin.Stablecoin FA1.2: KT1VuoysRj6tWFXAjrbQd67YMnTMi3SpNTdC | |
| nettest.Stablecoin.natConsumer: KT1GnUjbtLqQgeupcDCReYmzTa86mkvwgoRa | |
| nettest.Stablecoin.nettest.transferlist_internal: KT1QQAymdeefTj3RwTkvjvGWTDWJPenoiG7k | |
| nettest.Stablecoin.nettest.Stablecoin: KT1Q4DccWWaM15nc9iaMDcwLNj3m85k8euVF | |
| helper: KT1DW3Fq5m7q1bn8QgjhSX9iEwcBAK82bva6 | |
| nettest.Stablecoin.chainIdContract: KT1KUhbZCatB5X6svDpXJ4gAX5a9X1LyU2yv |
| import Language.Haskell.TH.Lib | |
| import Language.Haskell.TH.Syntax | |
| module Problem where | |
| data PP a where | |
| PP :: forall a. Typeable a => PP a | |
| instance Lift (PP a) where | |
| lift PP = [|PP|] |
A type variable can be either universally ("for all x, then ...") or existentially quantified ("there exists some x, ...").
(If you're a maths persons, this corresponds to ∀x. x and ∃x. x, respectively)
In haskell, universally quantified type vars are represented with a forall:
head :: forall a. [a] -> Maybe a
| import Data.Vinyl (Rec(..)) | |
| data Tag = TagInt | TagPair Tag Tag | |
| data Exp (t :: Tag) where | |
| EInt :: Int -> Exp 'TagInt | |
| EPair :: Exp t1 -> Exp t2 -> Exp ('TagPair t1 t2) | |
| type family RightComb (tags :: [Tag]) :: Tag where | |
| RightComb '[ x, y ] = 'TagPair x y |
| /home/dc/.ghcup/bin/ghc --make -fbuilding-cabal-package -O -static -dynamic-too -dynosuf dyn_o -dynhisuf dyn_hi -outputdir /home/dc/dev/other/doctest-mixins/dist-newstyle/build/x86_64-linux/ghc-8.8.3/doctest-mixins-0.1.0.0/build -odir /home/dc/dev/other/doctest-mixins/dist-newstyle/build/x86_64-linux/ghc-8.8.3/doctest-mixins-0.1.0.0/build -hidir /home/dc/dev/other/doctest-mixins/dist-newstyle/build/x86_64-linux/ghc-8.8.3/doctest-mixins-0.1.0.0/build -stubdir /home/dc/dev/other/doctest-mixins/dist-newstyle/build/x86_64-linux/ghc-8.8.3/doctest-mixins-0.1.0.0/build -i -i/home/dc/dev/other/doctest-mixins/dist-newstyle/build/x86_64-linux/ghc-8.8.3/doctest-mixins-0.1.0.0/build -isrc -i/home/dc/dev/other/doctest-mixins/dist-newstyle/build/x86_64-linux/ghc-8.8.3/doctest-mixins-0.1.0.0/build/autogen -i/home/dc/dev/other/doctest-mixins/dist-newstyle/build/x86_64-linux/ghc-8.8.3/doctest-mixins-0.1.0.0/build/global-autogen -I/home/dc/dev/other/doctest-mixins/dist-newstyle/build/x86_64-linux/ghc-8.8.3/doctest-mixins-0.1.0 |