Opened 7 years ago

Closed 15 months ago

#1105 closed feature request (wontfix)

Custom Runtimes

Reported by: humasect Owned by:
Priority: normal Milestone:
Component: Runtime System Version: 6.6
Keywords: runtime custom sdl cocoa init main ghci Cc:
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Difficulty: Unknown
Test Case: Blocked By:
Blocking: Related Tickets:

Description (last modified by igloo)

The ability to build custom runtimes would be useful in many development situations. Like Objective Caml's -custom, one would be able to create a interactive-invokable (GHCi) with a custom main () initialization and finalizer. For things such as SDL applications, Cocoa applications, there is a need for custom run loops as well. This would be an immensely great integration feature for GHC. In these situations it is not possible to work in GHCi on most/all platforms without much work done in a specialized hs-plugins REPL environment.

Ideas of Requirements:

  • specifiable initializer (from main)
  • specifiable finalizer
  • specifiable run loop / event handler (light thread) as such:
    • REPL
    • thread 0 - read, eval (send to thread 1), print, loop
    • thread 1 - processing events run loop, check for eval + send result to print stage

[the author is developing a Cocoa+GL native application in 100% Haskell sans HOC sans HOpenGL]

Change History (6)

comment:1 Changed 7 years ago by humasect

Update of formatting.

  • specifiable initializer (from main)
  • specifiable finalizer
  • specifiable run loop / event handler (light thread) as such:
    • REPL thread 0 - read, eval (send to thread 1), print, loop
    • thread 1 - processing events run loop, check for eval + send result to print stage

comment:2 Changed 7 years ago by igloo

  • Description modified (diff)
  • Milestone set to _|_

I'm a bit unclear on what exactly is wanted here. Does GHC-as-a-library provide it?

comment:3 Changed 6 years ago by simonmar

  • Architecture changed from Unknown to Unknown/Multiple

comment:4 Changed 6 years ago by simonmar

  • Operating System changed from Multiple to Unknown/Multiple

comment:5 Changed 15 months ago by morabbin

  • Type of failure set to None/Unknown

I don't the GHC API goes what the o.p. wants. He seems to be calling for replacing the scheduler (and other bits) with a domain-specific one of his own devising.

comment:6 Changed 15 months ago by simonmar

  • Resolution set to wontfix
  • Status changed from new to closed

Let's close - too vague, too old.

Note: See TracTickets for help on using tickets.