Ticket #2551 (closed feature request: wontfix)

Opened 5 years ago

Last modified 3 years ago

Allow multiple modules per source file

Reported by: YitzGale Owned by:
Priority: normal Milestone: _|_
Component: Compiler Version: 6.9
Keywords: Cc: vogt.adam@…
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Difficulty: Unknown
Test Case: Blocked By:
Blocking: Related Tickets:

Description

This is helpful because the module system is the only way to achieve encapsulation in Haskell, so the system needs to be as lightweight and flexible as possible. It also makes it easier to share and distribute Haskell programs when it is most convenient to do so as a single file, such as literate Haskell via email.

To use this feature, one would specify files to be compiled explicitly. When GHC searches on its own for modules, it needs the path of the file to indicate the name of the module it contains, so multiple modules are not possible in that case.

See #2550, and the thread in:

 http://www.haskell.org/pipermail/haskell-cafe/2008-August/046494.html

Change History

  Changed 5 years ago by igloo

  • difficulty set to Unknown
  • milestone set to _|_

I don't think we're likely to implement this any time soon, I'm afraid, unless there is more demand for it.

  Changed 5 years ago by simonmar

  • architecture changed from Unknown to Unknown/Multiple

  Changed 5 years ago by simonmar

  • os changed from Unknown to Unknown/Multiple

  Changed 3 years ago by aavogt

  • cc vogt.adam@… added
  • failure set to None/Unknown

follow-up: ↓ 6   Changed 3 years ago by mjg

  • status changed from new to closed
  • resolution set to wontfix

Current arrangement seems reasonable "as-is".

Another way to achieve encapsulation is labelled record system (available as Cabal package.)

in reply to: ↑ 5   Changed 3 years ago by simonmar

Replying to mjg:

Current arrangement seems reasonable "as-is".

I agree in this instance, but in the future I think it would be better to have some discussion on the mailing list or IRC before closing tickets as "wontfix".

Note: See TracTickets for help on using tickets.