run' k = 
  do 
    putStrLn "/* Kernels */"  
    sequence_$ map putStrLn kernels
    putStrLn "/* Coordination */" 
    putStrLn prg     
      where 
        kernels = map (\(x,_,_,_) -> x) (Map.elems km) -- 
        ((_,_,km),prg) = runKCM k (0,0) (Map.empty)                 
        
        
-- will only work for integers right now...  (fix , how )                 
run' k = 
  do 
    putStrLn "/* Kernels */"  
    sequence_$ map putStrLn kernels
    putStrLn "/* Coordination */" 
    putStrLn prg     
      where 
        kernels = map (\(x,_,_,_) -> x) (Map.elems km) -- 
        ((_,_,km),prg) = runKCM k (0,0) (Map.empty)                 
        
        
-- will only work for integers right now...  (fix , how )                 
run' k = 
  do 
    putStrLn "/* Kernels */"  
    sequence_$ map putStrLn kernels
    putStrLn "/* Coordination */" 
    putStrLn prg     
      where 
        kernels = map (\(x,_,_,_) -> x) (Map.elems km) -- 
        ((_,_,km),prg) = runKCM k (0,0) (Map.empty)                 
        
        
-- will only work for integers right now...  (fix , how )                 