2015-01-05 15 views
16

Khi tôi biên dịch tệp Haskell với ghci, thường với :load và nếu không có lỗi loại, tất cả các biểu thức được tải trong trình thông dịch ghc. Nó rất đẹp: Tôi có thể chơi xung quanh với :t để tìm ra loại biểu thức khác nhau.Ghc: biên dịch mã Haskell một phần?

Vấn đề của tôi là: nếu có lỗi nhỏ ở đâu đó, ghci không thể tải bất kỳ thứ gì (thậm chí không phải mô-đun đã nhập !!), giúp việc tìm đúng loại thậm chí còn khó khăn hơn. Tôi luôn luôn làm như vậy: bình luận ra tất cả các bit mà không typecheck, tìm các loại có liên quan wiht :t trong ghci, và de-bình luận.

Nhưng điều này thật tẻ nhạt! Có một quy trình làm việc tốt hơn để "biên dịch một phần" mã nguồn Haskell không?

+26

[': set -fdefer-type-errors'] (https://downloads.haskell.org/~ghc/7.8.4/docs/html/users_guide/defer-type-errors.html) –

+1

Oooh! chính xác những gì tôi cần! Cảm ơn!! –

+12

@MikhailGlushenkov tạo câu trả lời với các liên kết: D – d12frosted

Trả lời

9

Khi @MikhailGlushenkov chỉ ra trong các nhận xét, giải pháp là sử dụng cờ -fdefer-type-errors cho GHCi.

+0

Oh my god * Tôi cần điều này *. –

+0

@BartekBanachewicz Tôi đã rất vui mừng về nó quá, ngay lập tức bổ sung vào tập tin .ghci của tôi – bheklilr

+0

IRTA '-fprefer-type-errors' –

Các vấn đề liên quan