@@ -8,7 +8,6 @@ module CountWords
88
99import Control.Distributed.Process
1010import Control.Distributed.Process.Closure
11−import Control.Distributed.Static (staticClosure)
1211import MapReduce hiding (__remoteTable)
1312
1413type Document = String
@@ -30,12 +29,15 @@ dictIn = SerializableDict
3029dictOut :: SerializableDict [(Word, Frequency)]
3130dictOut = SerializableDict
3231
33−remotable ['dictIn, 'dictOut, 'countWords]
32+countWords_ :: () -> MapReduce FilePath Document Word Frequency Frequency
33+countWords_ () = countWords
34+
35+remotable ['dictIn, 'dictOut, 'countWords_]
3436
3537distrCountWords :: [NodeId] -> Map FilePath Document -> Process (Map Word Frequency)
3638distrCountWords mappers input =
3739 distrMapReduce $(mkStatic 'dictIn)
3840 $(mkStatic 'dictOut)
39− (staticClosure $(mkStatic 'countWords))
41+ ($(mkClosure 'countWords_) ())
4042 mappers
4143 (\iteration -> iteration input)