Skip to content

Commit

Permalink
use stack dependencies lamdu-calculus and AlgoW rather than submodule
Browse files Browse the repository at this point in the history
  • Loading branch information
yairchu committed Apr 19, 2016
1 parent a67ecca commit 833cf23
Show file tree
Hide file tree
Showing 62 changed files with 227 additions and 256 deletions.
4 changes: 0 additions & 4 deletions .atom-build.json

This file was deleted.

3 changes: 0 additions & 3 deletions .gitmodules
@@ -1,3 +0,0 @@
[submodule "submodules/AlgoW"]
path = submodules/AlgoW
url = https://github.com/lamdu/Algorithm-W-Step-By-Step
37 changes: 4 additions & 33 deletions Lamdu.cabal
Expand Up @@ -29,7 +29,6 @@ Flag noprettyclass
Library
-- Modules exported by the library.
hs-Source-Dirs: bottlelib
, submodules/AlgoW

Exposed-modules: Control.Applicative.Utils
, Control.Concurrent.Utils
Expand All @@ -39,7 +38,6 @@ Library
, Control.Monad.Trans.State.Utils
, Control.Monad.Unit
, Data.Binary.Utils
, Data.ByteString.Hex
, Data.ByteString.NFData
, Data.ByteString.Utils
, Data.CurAndPrev
Expand Down Expand Up @@ -137,8 +135,8 @@ Library

Executable lamdu
hs-Source-Dirs: .
, submodules/AlgoW
Build-Depends: GLFW-b
Build-Depends: AlgoW
, GLFW-b
, JuicyPixels
, Lamdu
, List >= 0.5.1
Expand All @@ -159,6 +157,7 @@ Executable lamdu
, filepath
, graphics-drawingcombinators >= 1.5.1.2
, hashable
, lamdu-calculus
, language-ecmascript >= 0.17
, lens
, nodejs-exec
Expand All @@ -181,9 +180,7 @@ Executable lamdu
else
build-depends: pretty >=1.1 && <1.1.2
, prettyclass ==1.0.0.0
Other-Modules: Data.Hashable.Generic
, Data.Map.Utils
, Lamdu.Builtins.Anchors
Other-Modules: Lamdu.Builtins.Anchors
, Lamdu.Builtins.PrimVal
, Lamdu.CharClassification
, Lamdu.Compiler.Flatten
Expand All @@ -204,25 +201,12 @@ Executable lamdu
, Lamdu.Eval.Manager
, Lamdu.Eval.Results
, Lamdu.Eval.Results.Process
, Lamdu.Expr.Constraints
, Lamdu.Expr.FlatComposite
, Lamdu.Expr.GenIds
, Lamdu.Expr.IRef
, Lamdu.Expr.IRef.Infer
, Lamdu.Expr.Identifier
, Lamdu.Expr.Lens
, Lamdu.Expr.Load
, Lamdu.Expr.Nominal
, Lamdu.Expr.Pure
, Lamdu.Expr.RecordVal
, Lamdu.Expr.Scheme
, Lamdu.Expr.Type
, Lamdu.Expr.Type.Match
, Lamdu.Expr.TypeVars
, Lamdu.Expr.UniqueId
, Lamdu.Expr.Val
, Lamdu.Expr.Val.Annotated
, Lamdu.Expr.Val.Arbitrary
, Lamdu.Font
, Lamdu.Formatting
, Lamdu.GUI.CodeEdit
Expand Down Expand Up @@ -272,17 +256,6 @@ Executable lamdu
, Lamdu.GUI.WidgetIdIRef
, Lamdu.GUI.WidgetIds
, Lamdu.GUI.Zoom
, Lamdu.Infer
, Lamdu.Infer.Error
, Lamdu.Infer.Internal.Constraints
, Lamdu.Infer.Internal.Monad
, Lamdu.Infer.Internal.Scheme
, Lamdu.Infer.Internal.Scope
, Lamdu.Infer.Internal.Subst
, Lamdu.Infer.Internal.Unify
, Lamdu.Infer.Load
, Lamdu.Infer.Unify
, Lamdu.Infer.Update
, Lamdu.Main
, Lamdu.Opts
, Lamdu.Style
Expand Down Expand Up @@ -328,8 +301,6 @@ Executable lamdu
, Lamdu.VersionControl
, Lamdu.VersionControl.Actions
, Paths_Lamdu
, Text.PrettyPrint.HughesPJClass.Compat
, Text.PrettyPrint.Utils

ghc-options: -O2 -Wall -threaded
-- ghc-options is prepended to ghc-prof-options
Expand Down
4 changes: 2 additions & 2 deletions Lamdu/Builtins/Anchors.hs
Expand Up @@ -12,8 +12,8 @@ module Lamdu.Builtins.Anchors

import Data.List.Utils (rightPad)
import Data.String (IsString(..))
import Lamdu.Expr.Type (Tag)
import qualified Lamdu.Expr.Type as T
import Lamdu.Calc.Type (Tag)
import qualified Lamdu.Calc.Type as T

-- We want the translation to UUID and back to not be lossy, so we
-- canonize to UUID format
Expand Down
6 changes: 3 additions & 3 deletions Lamdu/Builtins/PrimVal.hs
Expand Up @@ -9,9 +9,9 @@ module Lamdu.Builtins.PrimVal
import Data.Binary.Utils (encodeS, decodeS)
import Data.ByteString (ByteString)
import Lamdu.Builtins.Anchors (bytesTid, floatTid)
import Lamdu.Expr.Type (Type)
import qualified Lamdu.Expr.Type as T
import qualified Lamdu.Expr.Val as V
import Lamdu.Calc.Type (Type)
import qualified Lamdu.Calc.Type as T
import qualified Lamdu.Calc.Val as V

data KnownPrim
= Float Double
Expand Down
6 changes: 3 additions & 3 deletions Lamdu/Compiler/Flatten.hs
Expand Up @@ -9,9 +9,9 @@ module Lamdu.Compiler.Flatten
import qualified Control.Lens as Lens
import Control.Lens.Operators
import Data.Map (Map)
import qualified Lamdu.Expr.Type as T
import Lamdu.Expr.Val.Annotated (Val(..))
import qualified Lamdu.Expr.Val as V
import qualified Lamdu.Calc.Type as T
import Lamdu.Calc.Val.Annotated (Val(..))
import qualified Lamdu.Calc.Val as V

import Prelude.Compat

Expand Down
2 changes: 1 addition & 1 deletion Lamdu/Data/Anchors.hs
Expand Up @@ -25,9 +25,9 @@ import Data.Store.Transaction (MkProperty(..))
import qualified Data.Store.Transaction as Transaction
import GHC.Generics (Generic)
import qualified Graphics.UI.Bottle.WidgetId as WidgetId
import qualified Lamdu.Calc.Type as T
import Lamdu.Eval.Results (ScopeId)
import Lamdu.Expr.IRef (DefI, ValI)
import qualified Lamdu.Expr.Type as T
import qualified Lamdu.Expr.UniqueId as UniqueId

type Pane m = DefI m
Expand Down
4 changes: 2 additions & 2 deletions Lamdu/Data/Definition.hs
Expand Up @@ -12,8 +12,8 @@ import qualified Control.Lens as Lens
import Data.Binary (Binary(..))
import Data.Map (Map)
import GHC.Generics (Generic)
import Lamdu.Expr.Scheme (Scheme)
import Lamdu.Expr.Val (Var)
import Lamdu.Calc.Type.Scheme (Scheme)
import Lamdu.Calc.Val (Var)

import Prelude.Compat

Expand Down
6 changes: 3 additions & 3 deletions Lamdu/Data/Export/Codejam.hs
Expand Up @@ -22,6 +22,9 @@ import Data.Time.Clock.POSIX (getPOSIXTime)
import qualified Foreign as F
import qualified Graphics.Rendering.OpenGL as GL
import qualified Lamdu.Builtins.PrimVal as PrimVal
import qualified Lamdu.Calc.Val as V
import Lamdu.Calc.Val.Annotated (Val)
import qualified Lamdu.Calc.Val.Annotated as Val
import qualified Lamdu.Data.Anchors as Anchors
import Lamdu.Data.DbLayout (ViewM)
import qualified Lamdu.Data.DbLayout as DbLayout
Expand All @@ -32,9 +35,6 @@ import Lamdu.Eval.Results (EvalResults)
import qualified Lamdu.Eval.Results as EV
import Lamdu.Expr.IRef (ValI)
import qualified Lamdu.Expr.IRef as ExprIRef
import qualified Lamdu.Expr.Val as V
import Lamdu.Expr.Val.Annotated (Val)
import qualified Lamdu.Expr.Val.Annotated as Val

import Prelude.Compat

Expand Down
8 changes: 4 additions & 4 deletions Lamdu/Data/Export/JSON.hs
Expand Up @@ -33,6 +33,10 @@ import qualified Data.Store.Property as Property
import Data.Store.Transaction (Transaction)
import qualified Data.Store.Transaction as Transaction
import Data.UUID.Types (UUID)
import qualified Lamdu.Calc.Type as T
import Lamdu.Calc.Type.Nominal (Nominal)
import qualified Lamdu.Calc.Val as V
import Lamdu.Calc.Val.Annotated (Val(..))
import qualified Lamdu.Data.Anchors as Anchors
import Lamdu.Data.DbLayout (ViewM)
import qualified Lamdu.Data.DbLayout as DbLayout
Expand All @@ -43,11 +47,7 @@ import Lamdu.Expr.IRef (ValI)
import qualified Lamdu.Expr.IRef as ExprIRef
import qualified Lamdu.Expr.Lens as ExprLens
import qualified Lamdu.Expr.Load as Load
import Lamdu.Expr.Nominal (Nominal)
import qualified Lamdu.Expr.Type as T
import Lamdu.Expr.UniqueId (ToUUID)
import qualified Lamdu.Expr.Val as V
import Lamdu.Expr.Val.Annotated (Val(..))

import Prelude.Compat

Expand Down
22 changes: 11 additions & 11 deletions Lamdu/Data/Export/JSON/Codec.hs
Expand Up @@ -38,20 +38,20 @@ import Data.Text (Text)
import Data.UUID.Aeson ()
import Data.UUID.Types (UUID)
import qualified Data.Vector as Vector
import Lamdu.Calc.Identifier (Identifier, identHex, identFromHex)
import Lamdu.Calc.Type (Type, Composite)
import qualified Lamdu.Calc.Type as T
import Lamdu.Calc.Type.Constraints (Constraints(..), CompositeVarConstraints(..))
import Lamdu.Calc.Type.FlatComposite (FlatComposite(..))
import qualified Lamdu.Calc.Type.FlatComposite as FlatComposite
import Lamdu.Calc.Type.Nominal (Nominal(..), NominalType(..))
import Lamdu.Calc.Type.Scheme (Scheme(..))
import Lamdu.Calc.Type.Vars (TypeVars(..))
import Lamdu.Calc.Val.Annotated (Val(..))
import qualified Lamdu.Calc.Val as V
import qualified Lamdu.Data.Anchors as Anchors
import Lamdu.Data.Definition (Definition(..))
import qualified Lamdu.Data.Definition as Definition
import Lamdu.Expr.Constraints (Constraints(..), CompositeVarConstraints(..))
import Lamdu.Expr.FlatComposite (FlatComposite(..))
import qualified Lamdu.Expr.FlatComposite as FlatComposite
import Lamdu.Expr.Identifier (Identifier, identHex, identFromHex)
import Lamdu.Expr.Nominal (Nominal(..), NominalType(..))
import Lamdu.Expr.Scheme (Scheme(..))
import Lamdu.Expr.Type (Type, Composite)
import qualified Lamdu.Expr.Type as T
import Lamdu.Expr.TypeVars (TypeVars(..))
import Lamdu.Expr.Val.Annotated (Val(..))
import qualified Lamdu.Expr.Val as V

import Prelude.Compat

Expand Down
4 changes: 2 additions & 2 deletions Lamdu/Data/Ops.hs
Expand Up @@ -24,15 +24,15 @@ import Data.Store.Transaction (Transaction, getP, setP, modP)
import qualified Data.Store.Transaction as Transaction
import qualified Graphics.UI.Bottle.WidgetId as WidgetId
import qualified Lamdu.Builtins.Anchors as Builtins
import qualified Lamdu.Calc.Type as T
import qualified Lamdu.Calc.Val as V
import Lamdu.CharClassification (operatorChars)
import Lamdu.Data.Anchors (PresentationMode(..))
import qualified Lamdu.Data.Anchors as Anchors
import qualified Lamdu.Data.Definition as Definition
import qualified Lamdu.Expr.GenIds as GenIds
import Lamdu.Expr.IRef (DefI, ValIProperty, ValI, ValTree(..))
import qualified Lamdu.Expr.IRef as ExprIRef
import qualified Lamdu.Expr.Type as T
import qualified Lamdu.Expr.Val as V
import qualified System.Random.Utils as RandomUtils

import Prelude.Compat
Expand Down
4 changes: 2 additions & 2 deletions Lamdu/Data/Ops/Subexprs.hs
Expand Up @@ -11,11 +11,11 @@ module Lamdu.Data.Ops.Subexprs
import qualified Control.Lens as Lens
import Control.Monad (void)
import Data.Store.Transaction (Transaction)
import qualified Lamdu.Calc.Val as V
import Lamdu.Calc.Val.Annotated (Val(..))
import qualified Lamdu.Data.Ops as DataOps
import Lamdu.Expr.IRef (ValIProperty)
import qualified Lamdu.Expr.Lens as ExprLens
import qualified Lamdu.Expr.Val as V
import Lamdu.Expr.Val.Annotated (Val(..))

type T = Transaction

Expand Down
8 changes: 4 additions & 4 deletions Lamdu/Eval/JS.hs
Expand Up @@ -37,15 +37,15 @@ import qualified Data.UUID.Utils as UUIDUtils
import qualified Data.Vector as Vec
import Data.Word (Word8)
import qualified Lamdu.Builtins.PrimVal as PrimVal
import Lamdu.Calc.Identifier (Identifier(..))
import Lamdu.Calc.Type (Tag(..))
import qualified Lamdu.Calc.Val as V
import Lamdu.Calc.Val.Annotated (Val)
import qualified Lamdu.Data.Definition as Def
import qualified Lamdu.DataFile as DataFile
import qualified Lamdu.Eval.JS.Compiler as Compiler
import Lamdu.Eval.Results (ScopeId(..), EvalResults(..))
import qualified Lamdu.Eval.Results as ER
import Lamdu.Expr.Identifier (Identifier(..))
import Lamdu.Expr.Type (Tag(..))
import qualified Lamdu.Expr.Val as V
import Lamdu.Expr.Val.Annotated (Val)
import Numeric (readHex)
import System.FilePath (splitFileName)
import System.IO (IOMode(..), Handle, hClose, hIsEOF, hPutStrLn, withFile)
Expand Down
10 changes: 5 additions & 5 deletions Lamdu/Eval/JS/Compiler.hs
Expand Up @@ -28,15 +28,15 @@ import Data.UUID.Types (UUID)
import qualified Data.UUID.Utils as UUIDUtils
import qualified Lamdu.Builtins.Anchors as Builtins
import qualified Lamdu.Builtins.PrimVal as PrimVal
import Lamdu.Calc.Identifier (identHex)
import qualified Lamdu.Calc.Type as T
import qualified Lamdu.Calc.Val as V
import Lamdu.Calc.Val.Annotated (Val(..))
import qualified Lamdu.Calc.Val.Annotated as Val
import qualified Lamdu.Compiler.Flatten as Flatten
import qualified Lamdu.Data.Definition as Definition
import Lamdu.Expr.Identifier (identHex)
import qualified Lamdu.Expr.Lens as ExprLens
import qualified Lamdu.Expr.Type as T
import qualified Lamdu.Expr.UniqueId as UniqueId
import qualified Lamdu.Expr.Val as V
import Lamdu.Expr.Val.Annotated (Val(..))
import qualified Lamdu.Expr.Val.Annotated as Val
import qualified Language.ECMAScript3.PrettyPrint as JSPP
import qualified Language.ECMAScript3.Syntax as JSS
import qualified Language.ECMAScript3.Syntax.CodeGen as JS
Expand Down
2 changes: 1 addition & 1 deletion Lamdu/Eval/Manager.hs
Expand Up @@ -29,6 +29,7 @@ import qualified Data.Store.Rev.Version as Version
import Data.Store.Transaction (Transaction)
import qualified Data.Store.Transaction as Transaction
import Data.UUID.Types (UUID)
import Lamdu.Calc.Val.Annotated (Val)
import qualified Lamdu.Data.Anchors as Anchors
import Lamdu.Data.DbLayout (DbM, ViewM)
import qualified Lamdu.Data.DbLayout as DbLayout
Expand All @@ -39,7 +40,6 @@ import qualified Lamdu.Eval.Results as EvalResults
import Lamdu.Expr.IRef (DefI, ValI)
import qualified Lamdu.Expr.IRef as ExprIRef
import qualified Lamdu.Expr.Load as Load
import Lamdu.Expr.Val.Annotated (Val)
import Lamdu.VersionControl (getVersion)
import qualified Lamdu.VersionControl as VersionControl

Expand Down
4 changes: 2 additions & 2 deletions Lamdu/Eval/Results.hs
Expand Up @@ -15,8 +15,8 @@ import Data.Binary (Binary)
import Data.Map (Map)
import qualified Data.Map as Map
import Lamdu.Data.Definition (FFIName)
import qualified Lamdu.Expr.Type as T
import qualified Lamdu.Expr.Val as V
import qualified Lamdu.Calc.Type as T
import qualified Lamdu.Calc.Val as V

import Prelude.Compat

Expand Down
20 changes: 10 additions & 10 deletions Lamdu/Eval/Results/Process.hs
Expand Up @@ -9,21 +9,21 @@ import Data.Map (Map)
import qualified Data.Map as Map
import Data.Maybe (fromMaybe)
import qualified Lamdu.Builtins.Anchors as Builtins
import qualified Lamdu.Calc.Type as T
import qualified Lamdu.Calc.Type.FlatComposite as FlatComposite
import qualified Lamdu.Calc.Type.Nominal as N
import Lamdu.Calc.Type.Scheme (schemeType)
import qualified Lamdu.Calc.Val as V
import Lamdu.Eval.Results (Val(..), Body(..))
import qualified Lamdu.Eval.Results as ER
import qualified Lamdu.Expr.FlatComposite as FlatComposite
import qualified Lamdu.Expr.Lens as ExprLens
import qualified Lamdu.Expr.Nominal as N
import Lamdu.Expr.Scheme (schemeType)
import qualified Lamdu.Expr.Type as T
import qualified Lamdu.Expr.Val as V
import Lamdu.Infer (applyNominal)

import Prelude.Compat

extractRecordTypeField :: T.Tag -> T.Type -> Maybe (T.Type, T.Type)
extractRecordTypeField tag typ =
do
comp <- typ ^? ExprLens._TRecord
comp <- typ ^? T._TRecord
let flat = FlatComposite.fromComposite comp
fieldType <- flat ^. FlatComposite.fields . Lens.at tag
Just
Expand All @@ -36,7 +36,7 @@ extractRecordTypeField tag typ =
extractSumTypeField :: T.Tag -> T.Type -> Maybe T.Type
extractSumTypeField tag typ =
do
comp <- typ ^? ExprLens._TSum
comp <- typ ^? T._TSum
FlatComposite.fromComposite comp ^. FlatComposite.fields . Lens.at tag

type AddTypes val res = (T.Type -> val -> res) -> T.Type -> Body res
Expand Down Expand Up @@ -74,7 +74,7 @@ addTypesInject (V.Inject tag val) go typ =
addTypesArray :: [val] -> AddTypes val res
addTypesArray items go typ =
do
(_nomId, params) <- typ ^? ExprLens._TInst
(_nomId, params) <- typ ^? T._TInst
paramType <- params ^. Lens.at Builtins.valTypeParamId
items <&> go paramType & RArray & Just
& fromMaybe (ER.EvalTypeError "addTypes bad type for RArray" & RError)
Expand All @@ -100,7 +100,7 @@ unwrapTInsts nomsMap typ =
T.TInst tid params ->
Map.lookup tid nomsMap
& fromMaybe (error "addTypes: nominal missing from map")
& N.apply params
& applyNominal params
& \case
N.OpaqueNominal -> typ
N.NominalType scheme -> scheme ^. schemeType & unwrapTInsts nomsMap
Expand Down

0 comments on commit 833cf23

Please sign in to comment.