packages feed

hasktorch-signatures-types (empty) → 0.0.1.0

raw patch · 6 files changed

+313/−0 lines, 6 filesdep +basedep +deepseq

Dependencies added: base, deepseq

Files

+ hasktorch-signatures-types.cabal view
@@ -0,0 +1,39 @@+cabal-version: 2.2+-- * * * * * * * * * * * * WARNING * * * * * * * * * * * *+-- This file has been AUTO-GENERATED by dhall-to-cabal.+--+-- Do not edit it by hand, because your changes will be over-written!+--+-- Instead, edit the source Dhall file, namely+-- 'signatures/types/hasktorch-signatures-types.dhall', and re-generate this file by running+-- 'dhall-to-cabal -- signatures/types/hasktorch-signatures-types.dhall > hasktorch-signatures-types.cabal'.+-- * * * * * * * * * * * * WARNING * * * * * * * * * * * *+name: hasktorch-signatures-types+version: 0.0.1.0+license: BSD-3-Clause+maintainer: Sam Stites <fnz@fgvgrf.vb>, Austin Huang <nhfgvau@nyhz.zvg.rqh> - cipher:ROT13+author: Hasktorch dev team+homepage: https://github.com/hasktorch/hasktorch#readme+bug-reports: https://github.com/hasktorch/hasktorch/issues+synopsis: Core types for Hasktorch backpack signatures+description:+    This package includes core signature types to abstract over the hasktorch-types-* packages.+category: Tensors, Machine Learning, AI+build-type: Simple++source-repository head+    type: git+    location: https://github.com/hasktorch/hasktorch++library+    signatures: Torch.Sig.State+                Torch.Sig.Types+                Torch.Sig.Types.Global+                Torch.Sig.Tensor.Memory+                Torch.Sig.Storage.Memory+    hs-source-dirs: src+    default-language: Haskell2010+    build-depends:+        base (==4.7 || >4.7) && <5,+        deepseq ==1.3.0 || >1.3.0+
+ src/Torch/Sig/State.hsig view
@@ -0,0 +1,22 @@+-------------------------------------------------------------------------------+-- |+-- Module    :  Torch.Sig.State+-- Copyright :  (c) Sam Stites 2017+-- License   :  BSD3+-- Maintainer:  sam@stites.io+-- Stability :  experimental+-- Portability: non-portable+--+-- Signatures which relate to creating State and is _not_ involving in a+-- state's definition.+-------------------------------------------------------------------------------+signature Torch.Sig.State where++import Foreign+import Torch.Sig.Types.Global++torchstate :: ForeignPtr CState++-- newCState :: IO (Ptr CState)+-- manageState :: Ptr CState -> IO (ForeignPtr CState)+
+ src/Torch/Sig/Storage/Memory.hsig view
@@ -0,0 +1,7 @@+signature Torch.Sig.Storage.Memory where++import Foreign+import Torch.Sig.Types+import Torch.Sig.Types.Global++p_free :: FunPtr (Ptr CState -> Ptr CStorage -> IO ())
+ src/Torch/Sig/Tensor/Memory.hsig view
@@ -0,0 +1,7 @@+signature Torch.Sig.Tensor.Memory where++import Foreign+import Torch.Sig.Types+import Torch.Sig.Types.Global++p_free :: FunPtr (Ptr CState -> Ptr CTensor -> IO ())
+ src/Torch/Sig/Types.hsig view
@@ -0,0 +1,84 @@+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE DataKinds #-}+signature Torch.Sig.Types where++import Foreign+import Foreign.Storable+import GHC.TypeLits (Nat)+import Torch.Sig.Types.Global as X+import Control.DeepSeq+import Text.Printf++-- all C-types+data CTensor+instance Eq CTensor+data CStorage+instance Eq CStorage++-- freeStorage :: Ptr CState -> Ptr CStorage -> IO ()+-- freeTensor  :: Ptr CState -> Ptr CTensor -> IO ()++-- all haskell, memory-managed types+data Dynamic+instance Eq Dynamic+ctensor         :: Dynamic -> ForeignPtr CTensor+dynamic         :: ForeignPtr CState -> ForeignPtr CTensor -> Dynamic+dynamicState    :: Dynamic -> (ForeignPtr CState, ForeignPtr CTensor)+dynamicStateRef :: Dynamic -> ForeignPtr CState++data Storage+instance Eq Storage+cstorage        :: Storage -> ForeignPtr CStorage+storage         :: ForeignPtr CState -> ForeignPtr CStorage -> Storage+storageState    :: Storage -> (ForeignPtr CState, ForeignPtr CStorage)+storageStateRef :: Storage -> ForeignPtr CState++data Tensor (d::[Nat])+instance Eq (Tensor d)+asStatic  :: Dynamic -> Tensor d+asDynamic :: Tensor d -> Dynamic++data CReal+instance Num  CReal+instance Show CReal+instance Storable CReal+instance NFData CReal+-- instance PrintfArg CReal++data CAccReal+instance Num  CAccReal+instance Show CAccReal+instance Storable CAccReal+instance NFData CAccReal+-- instance PrintfArg CAccReal++data HsReal+instance Num  HsReal+instance Show HsReal+instance Ord HsReal+instance NFData HsReal+instance PrintfArg HsReal++-- FIXME: Consider how we will add things that are Fractional-specific in the+-- NN package like xavier instantiation.+--+-- instance Fractional HsReal++data HsAccReal+instance Num  HsAccReal+instance Show HsAccReal+instance Ord HsAccReal+instance NFData HsAccReal+instance PrintfArg HsAccReal++real2acc :: HsReal -> HsAccReal+acc2real :: HsAccReal -> HsReal++hs2cReal :: HsReal -> CReal+hs2cAccReal :: HsAccReal -> CAccReal++c2hsReal :: CReal -> HsReal+c2hsAccReal :: CAccReal -> HsAccReal++-- i2hsReal :: Integral i => i -> HsReal+
+ src/Torch/Sig/Types/Global.hsig view
@@ -0,0 +1,154 @@+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE DataKinds #-}++signature Torch.Sig.Types.Global where++import Foreign+import GHC.TypeLits+import Data.Kind++data CState+data State+asState :: ForeignPtr CState -> State+asForeign :: State -> ForeignPtr CState++-- all Globals variants+data CAllocator+data Allocator++data CDescBuff+data DescBuff+descBuff :: Ptr CDescBuff -> IO DescBuff++-- for RNG+data CGenerator+data Generator+rng :: Generator -> ForeignPtr CGenerator+generatorToRng :: ForeignPtr CGenerator -> Generator++-- any quirky splits between TH (CInt) and THC (CLLong)+data CInt'+instance Integral CInt'+instance Num CInt'+instance Ord CInt'+instance Enum CInt'+instance Bounded CInt'++-- aliases+type CMaskTensor = CByteTensor+type CIndexTensor = CLongTensor+type CIndexStorage = CLongStorage++type MaskTensor = (ByteTensor :: [Nat] -> Type)+type MaskDynamic = ByteDynamic+type IndexTensor = (LongTensor :: [Nat] -> Type)+type IndexDynamic = LongDynamic+type IndexStorage = LongStorage++-- unsigned types+data CByteTensor+data ByteTensor (d::[Nat])+byteAsDynamic :: ByteTensor (d::[Nat]) -> ByteDynamic+byteAsStatic  :: ByteDynamic -> ByteTensor (d::[Nat])+data ByteDynamic+byteDynamicState    :: ByteDynamic -> (ForeignPtr CState, ForeignPtr CByteTensor)+byteDynamic  :: ForeignPtr CState -> ForeignPtr CByteTensor -> ByteDynamic++data CByteStorage+data ByteStorage+byteStorageState :: ByteStorage -> (ForeignPtr CState, ForeignPtr CByteStorage)+byteStorage  :: ForeignPtr CState -> ForeignPtr CByteStorage -> ByteStorage++data CCharTensor+data CharTensor (d::[Nat])+charAsDynamic :: CharTensor (d::[Nat]) -> CharDynamic+charAsStatic  :: CharDynamic -> CharTensor (d::[Nat])+data CharDynamic+charDynamicState    :: CharDynamic -> (ForeignPtr CState, ForeignPtr CCharTensor)+charDynamic  :: ForeignPtr CState -> ForeignPtr CCharTensor -> CharDynamic++data CCharStorage+data CharStorage+charStorageState :: CharStorage -> (ForeignPtr CState, ForeignPtr CCharStorage)+charStorage  :: ForeignPtr CState -> ForeignPtr CCharStorage -> CharStorage++-- Signed types+data CLongTensor+data LongTensor (d::[Nat])+longAsDynamic :: LongTensor (d::[Nat]) -> LongDynamic+longAsStatic  :: LongDynamic -> LongTensor (d::[Nat])+data LongDynamic+longDynamicState   :: LongDynamic -> (ForeignPtr CState, ForeignPtr CLongTensor)+longDynamic :: ForeignPtr CState -> ForeignPtr CLongTensor -> LongDynamic++data CLongStorage+data LongStorage+longStorageState :: LongStorage -> (ForeignPtr CState, ForeignPtr CLongStorage)+longStorage  :: ForeignPtr CState -> ForeignPtr CLongStorage -> LongStorage++data CShortTensor+data ShortTensor (d::[Nat])+shortAsDynamic :: ShortTensor (d::[Nat]) -> ShortDynamic+shortAsStatic  :: ShortDynamic -> ShortTensor (d::[Nat])+data ShortDynamic+shortDynamicState  :: ShortDynamic -> (ForeignPtr CState, ForeignPtr CShortTensor)+shortDynamic       :: ForeignPtr CState -> ForeignPtr CShortTensor -> ShortDynamic++data CShortStorage+data ShortStorage+shortStorageState  :: ShortStorage -> (ForeignPtr CState, ForeignPtr CShortStorage)+shortStorage       :: ForeignPtr CState -> ForeignPtr CShortStorage -> ShortStorage++data CIntTensor+data IntTensor (d::[Nat])+intAsDynamic :: IntTensor (d::[Nat]) -> IntDynamic+intAsStatic  :: IntDynamic -> IntTensor (d::[Nat])+data IntDynamic+intDynamicState   :: IntDynamic -> (ForeignPtr CState, ForeignPtr CIntTensor)+intDynamic :: ForeignPtr CState -> ForeignPtr CIntTensor -> IntDynamic++data CIntStorage+data IntStorage+intStorageState :: IntStorage -> (ForeignPtr CState, ForeignPtr CIntStorage)+intStorage  :: ForeignPtr CState -> ForeignPtr CIntStorage -> IntStorage++-- Floating types+data CFloatTensor+data FloatTensor (d::[Nat])+floatAsDynamic :: FloatTensor (d::[Nat]) -> FloatDynamic+floatAsStatic  :: FloatDynamic -> FloatTensor (d::[Nat])+data FloatDynamic+floatDynamicState :: FloatDynamic -> (ForeignPtr CState, ForeignPtr CFloatTensor)+floatDynamic :: ForeignPtr CState -> ForeignPtr CFloatTensor -> FloatDynamic++data CFloatStorage+data FloatStorage+floatStorageState :: FloatStorage -> (ForeignPtr CState, ForeignPtr CFloatStorage)+floatStorage  :: ForeignPtr CState -> ForeignPtr CFloatStorage -> FloatStorage++data CDoubleTensor+data DoubleTensor (d::[Nat])+doubleAsDynamic :: DoubleTensor (d::[Nat]) -> DoubleDynamic+doubleAsStatic  :: DoubleDynamic -> DoubleTensor (d::[Nat])+data DoubleDynamic+doubleDynamicState   :: DoubleDynamic -> (ForeignPtr CState, ForeignPtr CDoubleTensor)+doubleDynamic :: ForeignPtr CState -> ForeignPtr CDoubleTensor -> DoubleDynamic++data CDoubleStorage+data DoubleStorage+doubleStorageState :: DoubleStorage -> (ForeignPtr CState, ForeignPtr CDoubleStorage)+doubleStorage  :: ForeignPtr CState -> ForeignPtr CDoubleStorage -> DoubleStorage++{-+data CHalfTensor+data HalfDynamic+halfCTensor   :: HalfDynamic -> ForeignPtr CHalfTensor+halfDynamic :: ForeignPtr CHalfTensor -> HalfDynamic++data CHalfStorage+data HalfStorage+halfCStorage :: HalfStorage -> (ForeignPtr CHalfStorage, ForeignPtr CState)+halfStorage  :: ForeignPtr CHalfStorage -> HalfStorage+-}++