Live data from Hacker News

GHC 8.0.1 is available

ghc.haskell.org

11–20 of 38 posts

Re: GHC 8.0.1 is available

#11
post #8

The new Sphinx based documentation has many code sample boxes where the content overflows and the rectange is smaller than the text which doesn't fit into the rendered HTML/PDF. Is this a common issue with Sphinx?

Hmmm, I've noticed this in the PDF output but haven't yet seen anything similar in the HTML output. Could you point me at a specific example?

Re: GHC 8.0.1 is available

#12

The FPComplete guys will probably have it up on Stackage in a few days. You can still use it by adding the tarball to your stack.yml, and maybe adding the 'allow-newer: true' flag: https://www.reddit.com/r/haskell/comments/4kdb74/is_a_stacka... I'm looking forward to trying out the new debugging support: gdb was unusable with older GHCs. Implicit callstacks are cool: Remember that you can hide the parameter inside of…

> I'm looking forward to trying out the new debugging support: gdb was unusable with older GHCs.

Indeed; it should be slightly better now but as the documentation says, there are still plenty of rough edges. I certainly wouldn't recommend it for day-to-day use. I have a patch set in the works which ought to fix the remaining issues so hopefully 8.2 will finally be usable.

However, in my experience the implicit callstack functionality along with the ability to provide callstacks from profiling information greatly reduces the need for DWARF unwinding for debugging (low-cost profiling, on the other hand, it may still be quite useful for).

Re: GHC 8.0.1 is available

#13
post #4

Earlier quoted context omitted.

As a recent beginner to Haskell, are there other big outstanding issues with the GHC to watch out for?

The record issue is a widespread inconvenience, but ultimately nothing more than an inconvenience. Most people just prepended the type in their fields: 'person_name' and 'object_name'. Some other issues might be: * The Prelude is hard to update for compatibility reasons, so it clashes with modern Haskell somewhat. A lot of projects will roll their own prelude and add 'NoImplicitPrelude' to the project options. * Ther…

Most people just prepended the type in their fields: 'person_name' and 'object_name'.

Coincidentally, the reason why that practice is still visible in some C structures today is because very early C compilers had a similar limitation:

http://stackoverflow.com/questions/35874187/prefixes-in-memb...

Re: GHC 8.0.1 is available

#14

Earlier quoted context omitted.

The record issue is a widespread inconvenience, but ultimately nothing more than an inconvenience. Most people just prepended the type in their fields: 'person_name' and 'object_name'. Some other issues might be: * The Prelude is hard to update for compatibility reasons, so it clashes with modern Haskell somewhat. A lot of projects will roll their own prelude and add 'NoImplicitPrelude' to the project options. * Ther…

Regarding deployment, why not just link statically? http://stackoverflow.com/a/5953787/309483

This isn't portable with glibc. (It isn't for C/C++ programs, either).

You can build GHC with musl libc and then make truly portable static binaries but it isn't that easy.

https://www.reddit.com/r/haskell/comments/37m7q7/ghc_musl_ea...

Re: GHC 8.0.1 is available

#15

Earlier quoted context omitted.

The record issue is a widespread inconvenience, but ultimately nothing more than an inconvenience. Most people just prepended the type in their fields: 'person_name' and 'object_name'. Some other issues might be: * The Prelude is hard to update for compatibility reasons, so it clashes with modern Haskell somewhat. A lot of projects will roll their own prelude and add 'NoImplicitPrelude' to the project options. * Ther…

Regarding deployment, why not just link statically? http://stackoverflow.com/a/5953787/309483

You can't link glibc statically for technical reasons. In some sense, this is the only problem I had. If there was a way to use an alternate libc, it would probably eliminate this issue entirely.

Re: GHC 8.0.1 is available

#16
post #11
post #8

The new Sphinx based documentation has many code sample boxes where the content overflows and the rectange is smaller than the text which doesn't fit into the rendered HTML/PDF. Is this a common issue with Sphinx?

Hmmm, I've noticed this in the PDF output but haven't yet seen anything similar in the HTML output. Could you point me at a specific example?

Rebuilding the latest release now, was referring to previous RCs. It may very well be just the PDF output. I'll check Sunday and report here.

Re: GHC 8.0.1 is available

#17

Earlier quoted context omitted.

Regarding deployment, why not just link statically? http://stackoverflow.com/a/5953787/309483

You can't link glibc statically for technical reasons. In some sense, this is the only problem I had. If there was a way to use an alternate libc, it would probably eliminate this issue entirely.

I know there was some work to do a musl and or alpine Linux build. Or both, probably easy to google. Also I'm moderately certain that ghc on FreeBSD and Mac don't need glibc ;)

Re: GHC 8.0.1 is available

#18
post #4

Earlier quoted context omitted.

As a recent beginner to Haskell, are there other big outstanding issues with the GHC to watch out for?

The record issue is a widespread inconvenience, but ultimately nothing more than an inconvenience. Most people just prepended the type in their fields: 'person_name' and 'object_name'. Some other issues might be: * The Prelude is hard to update for compatibility reasons, so it clashes with modern Haskell somewhat. A lot of projects will roll their own prelude and add 'NoImplicitPrelude' to the project options. * Ther…

Record issue is more than just an inconvenience. I consider it a genuine issue. Having to add 2 lines of import (unqualified name of the type and qualified record module to get the accessors) for every record type you use is a pain. When you work with data-heavy code this ends up hundred of lines of import (see amazonka packages for instance where each request has a record type).

Re: GHC 8.0.1 is available

#19

Earlier quoted context omitted.

The record issue is a widespread inconvenience, but ultimately nothing more than an inconvenience. Most people just prepended the type in their fields: 'person_name' and 'object_name'. Some other issues might be: * The Prelude is hard to update for compatibility reasons, so it clashes with modern Haskell somewhat. A lot of projects will roll their own prelude and add 'NoImplicitPrelude' to the project options. * Ther…

Record issue is more than just an inconvenience. I consider it a genuine issue. Having to add 2 lines of import (unqualified name of the type and qualified record module to get the accessors) for every record type you use is a pain. When you work with data-heavy code this ends up hundred of lines of import (see amazonka packages for instance where each request has a record type).

Even if it doubles the number of import statements, I still don't see how that is more than an inconvenience. Having said that, the record issue alone is not the only reason to need qualified imports (as they are also used to resolve collisions of functions that are not auto generated from records).

What would be nice is if Haskell would allow any name collision so long as it could use the type system to disambiguate the function.

Re: GHC 8.0.1 is available

#20

    * Significant improvements in error message readability and 
      content, including facilities for libraries to provide custom
      error messages, more aggressive warnings for fragile rewrite
      rules, and more helpful errors for missing imports.
I'm really excited about this. Any push towards more decipherable error messages should be huge in increasing adoption (which leads to more awesome libraries and opportunities to use it for our day jobs).

I still see plenty of errors that remind me of this post. https://izbicki.me/blog/error-messages-in-ghc-vs-g%2B%2B.htm...

Post reply on HN