簡體   English   中英

Haskell模塊:隱藏名稱和ghci

[英]Haskell modules: hidden names and ghci

我正在嘗試從Haskell模塊中導出一個名稱的子集,但是ghci很高興讓我訪問隱藏的名稱。

module Hiding (shown, calc) where

calc = shown * hidden

shown :: Int
shown = 3

hidden :: Int
hidden = 2

但是當我在ghci中嘗試這個時,我得到:

Prelude> :l Hiding.hs 
[1 of 1] Compiling Hiding           ( Hiding.hs, interpreted )
Ok, modules loaded: Hiding.
*Hiding> hidden
2

我究竟做錯了什么?

(編輯:為了它的價值,我在Arch Linux上使用ghci 6.12.3)

看起來GHCi正在加載您的模塊供您檢查,即將您置於模塊的范圍內。 兩個提示是提示*Hiding>以及您訪問隱藏功能的事實。

編輯:
最后是: http//www.haskell.org/ghc/docs/latest/html/users_guide/interactive-evaluation.html#id3045728

它看起來像你做了正確的事情。 如果你試圖從另一個模塊引用該模塊,我敢打賭hidden拒絕工作。 可能是GHCI是全知的:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM