question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Specify -fobject-code when launching intero

See original GitHub issue

Hi @rikvdkleij

One optimisation that Intero for Emacs uses is to set -fobject-code when launching intero so that only those modules that have changed are recompiled; this scales well for large projects. With the default -fbyte-code all modules are reloaded every time with :load.

(:reload will load just the recent module, but switching modules causes a big reload of everything. So that’s a trade-off)

Setting -fdefer-type-errors helps get more type info be available, at the cost of slightly slower compile due to GHC.

Just wanted to add that in case it wasn’t known.

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Reactions:1
  • Comments:6 (4 by maintainers)

github_iconTop GitHub Comments

5reactions
rikvdkleijcommented, Mar 18, 2019

Done in beta45, https://github.com/rikvdkleij/intellij-haskell/releases/tag/v1.0.0-beta45. Also uploaded to the JB plugin repo but can take some days before they have approved.

Created alternative solution for :browse! *moduleName by using the parser and type info.

REPL switches to byte-code when info is requested.

0reactions
chrisdonecommented, Feb 18, 2019

It’s possible to temporarily :set -fbyte-code and :reload to get information for the current module then :set -fobject-code back afterward. Intero does that if it uses :info and doesn’t get anything back. It’s definitely a matter of figuring out what works for you at this point.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Intero Real Estate Services
We Help You Buy, Sell and Invest In Real Estate · Title & Escrow Services · Get Preapproved For A Loan · Get...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found