Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Haskell 在ghci中,[安全]标记是什么意思?_Haskell_Ghci - Fatal编程技术网

Haskell 在ghci中,[安全]标记是什么意思?

Haskell 在ghci中,[安全]标记是什么意思?,haskell,ghci,Haskell,Ghci,[safe]是什么意思?它只是指数据类型是在使用safe扩展定义的模块中定义的。您可以找到扩展的详细信息 事实上,您可以通过使用Safe扩展定义一个模块来测试这一点: Prelude Data.Void> :info Void data Void -- Defined in `Data.Void' instance [safe] Eq Void -- Defined in `Data.Void' instance [safe] Ord Void -- Defined in `D

[safe]是什么意思?

它只是指数据类型是在使用safe扩展定义的模块中定义的。您可以找到扩展的详细信息

事实上,您可以通过使用
Safe
扩展定义一个模块来测试这一点:

Prelude Data.Void> :info Void
data Void       -- Defined in `Data.Void'
instance [safe] Eq Void -- Defined in `Data.Void'
instance [safe] Ord Void -- Defined in `Data.Void'
instance [safe] Read Void -- Defined in `Data.Void'
instance [safe] Show Void -- Defined in `Data.Void'
然后在ghci中试用:

{-#LANGUAGE Safe#-}

data Test = Test deriving (Eq, Show)
但请注意,在当前的GHC(7.10.2)中,由于更新了到的链接,因此不能依赖信托担保的安全扩展
λ> :i Test
data Test = Test    
instance [safe] Eq Test 
instance [safe] Show Test