一种idris-ir的加载程序。
idris-python的Python项目详细描述
IDRIS凸轮
最后,我们在python社区中实现了依赖类型。
安装
pip install idris-python
用法
- 命令:idris python
- 命令:运行cam
##示例
由于缺少封装,这是一个很冗长的例子,但我很忙。
下面的例子显示了我已经实现了这么大的任务。
moduleMainimportCam.FFIimportCam.IOimportCam.Data.CollectionsimportCam.Data.FCollectionsimportCam.Data.CompatimportData.VectimportData.HVect%access export main:IO() main =do putStrLn $ show vect sklearn <- camImport $TheModule"sklearn.datasets" load_iris <- camImportFrom sklearn "load_iris" iris <- unsafeCall load_iris $ zero_ary data' <- getattr iris "data" tag <- getattr iris "target" rfc <-let ensemble = camImport $TheModule"sklearn.ensemble"in camImportFrom !ensemble "RandomForestClassifier" clf <- unsafeCall rfc zero_ary fit <- getattr clf "fit" unsafeCall fit . unsafe $ the (FList_)[data', tag] score <- getattr clf "score" value <- unsafeCall score . unsafe $ the (FList_)[data', tag]-- overfit println value wherevect:HVect[Int] vect = the (HVect_)[1]zero_ary:Unsafe zero_ary = unsafe $ the (FListUnsafe)$[]getattr':IOUnsafe getattr' =do b <- camImport $TheModule"builtins" camImportFrom b "getattr"getattr:Unsafe->String->IOUnsafe getattr obj s =let s = unsafe . the (BoxedString)$ s inlet args = unsafe . the (FHVect[_, _])$[obj, toText s]in unsafeCall !getattr' args
你可能会得到
[1] 0.99
如果使用命令idris-python将其作为文件运行。