working generation of Lamda Individuals! \o/
This commit is contained in:
parent
b6c1c27224
commit
a470fcc997
|
@ -46,7 +46,7 @@ type R = Double
|
|||
-- An Environment that Individuals of type i can be created from
|
||||
-- It stores all information required to create and change Individuals correctly
|
||||
--
|
||||
class (Eq e, Pretty e, Individual i) => Environment i e where
|
||||
class (Pretty e, Individual i) => Environment i e where
|
||||
-- |
|
||||
-- Generates a completely random individual.
|
||||
--
|
||||
|
|
35
src/Test.hs
35
src/Test.hs
|
@ -1,4 +1,3 @@
|
|||
{-# LANGUAGE NoImplicitPrelude #-}
|
||||
{-# LANGUAGE GADTs #-}
|
||||
{-# LANGUAGE MultiParamTypeClasses #-}
|
||||
{-# LANGUAGE OverloadedStrings #-}
|
||||
|
@ -9,21 +8,35 @@
|
|||
|
||||
module Main where
|
||||
|
||||
import Data.Random
|
||||
import Data.Typeable
|
||||
import qualified GA
|
||||
import qualified LambdaCalculus
|
||||
import Protolude
|
||||
import qualified Seminar
|
||||
import qualified LambdaCalculus
|
||||
import Data.Typeable
|
||||
import System.Random.MWC (createSystemRandom)
|
||||
import qualified Type.Reflection as Ref
|
||||
|
||||
main :: IO ()
|
||||
main = do
|
||||
_ <- GA.runTests
|
||||
_ <- Seminar.runTests
|
||||
_ <- putStrLn $ ((show (typeRepArgs (Ref.SomeTypeRep (Ref.TypeRep @(Int->Int->Int->Text))))) :: Text)
|
||||
_ <- putStrLn $ ((show (typeRepArgs (Ref.SomeTypeRep (Ref.TypeRep @(Text))))) :: Text)
|
||||
_ <- putStrLn (LambdaCalculus.toLambdaExpressionShort LambdaCalculus.testIntToClassCorrect)
|
||||
_ <- putStrLn $ ((show (LambdaCalculus.res 1)) :: Text)
|
||||
_ <- putStrLn $ ((show (LambdaCalculus.res 2)) :: Text)
|
||||
_ <- putStrLn $ ((show (LambdaCalculus.res 3)) :: Text)
|
||||
--_ <- GA.runTests
|
||||
--_ <- Seminar.runTests
|
||||
--_ <- putStrLn $ ((show (typeRepArgs (Ref.SomeTypeRep (Ref.TypeRep @(Int -> Int -> Int -> Text))))) :: Text)
|
||||
--_ <- putStrLn $ ((show (typeRepArgs (Ref.SomeTypeRep (Ref.TypeRep @(Text))))) :: Text)
|
||||
mwc <- createSystemRandom
|
||||
r <- sampleFrom mwc $ LambdaCalculus.new LambdaCalculus.exampleLE
|
||||
_ <- putStrLn $ LambdaCalculus.toLambdaExpressionS $ r
|
||||
r <- sampleFrom mwc $ LambdaCalculus.new LambdaCalculus.exampleLE
|
||||
_ <- putStrLn $ LambdaCalculus.toLambdaExpressionS $ r
|
||||
--_ <- putStrLn (LambdaCalculus.toLambdaExpressionShort LambdaCalculus.testIntToClassCorrect)
|
||||
--_ <- putStrLn $ ((show (LambdaCalculus.res 1)) :: Text)
|
||||
--_ <- putStrLn $ ((show (LambdaCalculus.res 2)) :: Text)
|
||||
--_ <- putStrLn $ ((show (LambdaCalculus.res 3)) :: Text)
|
||||
return ()
|
||||
|
||||
if' :: Bool -> a -> a -> a
|
||||
if' True x _ = x
|
||||
if' False _ y = y
|
||||
|
||||
--f :: Int -> Int -> Int
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user