2010-06-08 54 views
38

Tôi muốn sử dụng {-# LANGUAGE OverloadedStrings #-} nhưng tôi đã quên cách nó được gọi. Loại điều này không phải là hoogle-có thể, và cũng phải mất một thời gian tìm kiếm bằng cách sử dụng google *.Danh sách các phần mở rộng của GHC

Có nơi nào đó danh sách các tiện ích mở rộng GHC được đặt tên khi chúng nằm trong pragma LANGUAGE không?

* My googling tìm kiếm hành trình:

Trả lời

26

Phần "Language options" của the flag reference page có danh sách dễ duyệt hơn nhiều so với trang tính năng ngôn ngữ.

Khi bạn đang ở đó, tìm kiếm "quá tải" Ctrl-F sẽ đưa bạn đến đúng những gì bạn muốn.

+5

Đúng, và trang người đàn ông ghc cũng tốt. Luôn luôn làm cho tôi cảm thấy tiếc cho những người trên nền tảng vô dụng. –

28

Hoàn thành tab của ghci biết. Nhập :set -X vào dấu nhắc ghci, sau đó nhấn Tab và bạn sẽ nhận được danh sách đầy đủ. Hoặc :set -XFoo thì Tab sẽ đưa bạn một danh sách tất cả các tiện ích mở rộng bắt đầu bằng Foo.

+2

Câu trả lời của bạn rất hữu ích vì nó cũng giới thiệu tôi với ': set -X'! – yairchu

3

ghc-mod cho Emacs được tìm thấy tại đây: http://hackage.haskell.org/package/ghc-mod, bao gồm hoàn thành cho tiện ích mở rộng ngôn ngữ. Nếu bạn là một người dùng Emacs, tôi đề nghị bạn thử nó.

3

Khi sử dụng Leksah IDE, chọn menu trọn gói, sau đó Chỉnh sửa gói mục trình đơn, sau đó tab mở rộng cũng cung cấp cho bạn một danh sách checkable.

2

cách hacky câm của tôi làm việc như:

$ man ghc | grep String 
     -XExtendedDefaultRules -XNoExtendedDefaultRules -XOverloadedStrings 
     -XNoOverloadedStrings -XGADTs -XNoGADTs -XGADTSyntax -XNoGADTSyntax 
Các vấn đề liên quan