News for hackers. Stuff that matters.
Re:Guile also supports the web at the programming language l... by pjscott on Friday December 17, 2010 @06:49PM (#2018356)
Haskell's type system catches a lot of bugs, and there are a lot of things right about it, but in practice, the type system often feels like a pain in the ass. I'm tired of being hit with nigh-incomprehensible type errors. I'm very tired of not being able to do printf debugging without using the IO monad and changing all the type signatures, although judicious use of unsafePerformIO helps.

What I really want in a type system is for it to catch bugs, but get out of my way. Haskell is a little too stern for my liking.

Re:Guile also supports the web at the programming language l... by neutronicus on Friday December 17, 2010 @09:45PM (#2018735)
Debug.trace is the module for you, my friend.

Debug.trace a b = a

and b gets logged to the console. Or maybe it's backwards. I forget.

Re:Guile also supports the web at the programming language l... by lsb on Friday December 17, 2010 @10:55PM (#2018841)
It's the opposite way:

  Debug.Trace.trace :: String -> a -> a
and if you don't like debug.trace, you can make your own, via unsafePerformIO!

  hackyDebugTrace s v = unsafePerformIO (putStrLn s >>= \_ -> return v)