Coder Social home page Coder Social logo

Comments (27)

rikvdkleij avatar rikvdkleij commented on May 13, 2024 1

I'm busy with replacing ghc-mod by stack repl offline.

Reason is long history of issues with ghc-mod. My last issue was that I could build project with stack but ghc-mod did did not work.

from intellij-haskell.

rikvdkleij avatar rikvdkleij commented on May 13, 2024 1

i know, but it really get much faster 😂

Wait till I replaced ghc-mod by stack repl 😄

from intellij-haskell.

rikvdkleij avatar rikvdkleij commented on May 13, 2024 1

ghc-mod is not used anymore in latest version.

from intellij-haskell.

zjhmale avatar zjhmale commented on May 13, 2024

any links about this ghc-mod upstream issue?

from intellij-haskell.

rikvdkleij avatar rikvdkleij commented on May 13, 2024

No, I did not report it this time.

from intellij-haskell.

rikvdkleij avatar rikvdkleij commented on May 13, 2024

I only see advantages in replacing ghc-mod by stack. Most important advantage is no dependency anymore. When it builds with "your" GHC version and Stack, plugin also works.

from intellij-haskell.

zjhmale avatar zjhmale commented on May 13, 2024

can you show any details about you current stage? i'm really interested 😄 . do you attemp to add a subcommand for stack to do the auto code completion stuff instread of using ghc-mod?

I'm busy with replacing ghc-mod by stack repl offline.

from intellij-haskell.

zjhmale avatar zjhmale commented on May 13, 2024

after disable HaskellCompletionContributor.scala, still get high cpu usage with ghc-mod when editing code.

2016-04-24 10 00 07

and sometimes will occurs the error

Error in communication with ghc-mod: Futures timed out after [5 seconds]. Check if GHC SDK is set and ghc-mod is okay. ghc-mod will not be called for 5 seconds. 

have you met this issue before? @rikvdkleij i think it's a big deal here, really disturb 😂

from intellij-haskell.

rikvdkleij avatar rikvdkleij commented on May 13, 2024

can you show any details about you current stage? i'm really interested 😄 . do you attemp to add a subcommand for stack to do the auto code completion stuff instread of using ghc-mod?

stack repl of ghci can give me almost same info as ghc-mod but it's obtained in different away. Have to use some tricks :-)

from intellij-haskell.

rikvdkleij avatar rikvdkleij commented on May 13, 2024

I had issues with running ghc-mod check in interactive mode. This check is also not consistent, see issue #275 of ghc-mod. Workaround is to go again back to for checking files with ghc-mod check instead of checking files in interactive mode (legacy mode) of ghc-mod.

So I suspect checking files in interactive mode is causing this problem.

from intellij-haskell.

rikvdkleij avatar rikvdkleij commented on May 13, 2024

I have pushed changes to replace ghc-mod legacy-interactive check by ghc-mod check.

Can you give it a try?

from intellij-haskell.

zjhmale avatar zjhmale commented on May 13, 2024

i think we still face the issue here.

2016-04-25 10 47 39

and i'm with v0.94 now

2016-04-25 10 48 26

from intellij-haskell.

zjhmale avatar zjhmale commented on May 13, 2024

maybe a cache system is needed? @rikvdkleij

https://github.com/mkasa/neco-ghc-lushtags
https://github.com/iquiw/company-ghc/blob/master/company-ghc.el
https://github.com/carymrobbins/intellij-haskforce/blob/master/src/com/haskforce/codeInsight/HaskellCompletionCacheLoader.scala

haskforce is often get stucked when editing large files because of the impropriate design of PSI structure i guess, haskforce itself will get high cpu usage sometimes.

2016-04-25 12 03 14

from intellij-haskell.

zjhmale avatar zjhmale commented on May 13, 2024

2016-04-25 12 38 44

i just tried https://github.com/mkasa/neco-ghc-lushtags/blob/master/bin/ghc-mod-cache and it works fine, the cpu usage of ghc-mod remained around at %8 - %20, sometimes it will bump up to about %40. we should implement a similar middle layer inside the plugin 😄

from intellij-haskell.

zjhmale avatar zjhmale commented on May 13, 2024

currently, i just comment the code here https://github.com/rikvdkleij/intellij-haskell/blob/master/src/main/scala/intellij/haskell/external/GhcModProcess.scala#L102-L107 to get a better performence for self usage 😂 . btw, i can not quite figure out what is ghc-modi or ghc-mod legacy-interactive command's job here, no docs or wiki can be found about it.

from intellij-haskell.

rikvdkleij avatar rikvdkleij commented on May 13, 2024

I have implemented a ghc-mod cache with com.google.common.cache but apparently it does not prevent ghc-mod from running high cpu usage. So some special condition in which it occurs.

See for example: GhcModInfo

from intellij-haskell.

rikvdkleij avatar rikvdkleij commented on May 13, 2024

Btw, I found the problem I had with ghc-mod getting to work, it was built with older Stackage lts version than currently used in my Haskell projects.

from intellij-haskell.

rikvdkleij avatar rikvdkleij commented on May 13, 2024

currently, i just comment the code here https://github.com/rikvdkleij/intellij-haskell/blob/master/src/main/scala/intellij/haskell/external/GhcModProcess.scala#L102-L107 to get a better performence for self usage 😂 .

If you comment those line out, there will be no communication anymore between ghc-mod legacy-interactive and intellij

btw, i can not quite figure out what is ghc-modi or ghc-mod legacy-interactive command's job here, no docs or wiki can be found about it.

There is no difference, see DanielG/ghc-mod#639

from intellij-haskell.

zjhmale avatar zjhmale commented on May 13, 2024

cool, see it. sorry i did not walk through the whole project 😂

I have implemented a ghc-mod cache with com.google.common.cache but apparently it does not prevent ghc-mod from running high cpu usage. So some special condition in which it occurs.

See for example: GhcModInfo

from intellij-haskell.

zjhmale avatar zjhmale commented on May 13, 2024

my ghc-mod is build with ghc 7.10.3 and i use ghc 7.10.2 with my haskell projects, maybe i should reinstall ghc-mod then.

Btw, I found the problem I had with ghc-mod getting to work, it was built with older Stackage lts version than currently used in my Haskell projects.

from intellij-haskell.

zjhmale avatar zjhmale commented on May 13, 2024

i know, but it really get much faster 😂

If you comment those line out, there will be no communication anymore between ghc-mod legacy-interactive and intellij

from intellij-haskell.

zjhmale avatar zjhmale commented on May 13, 2024

can't wait to use it 😄

Wait till I replaced ghc-mod by stack repl.

from intellij-haskell.

zjhmale avatar zjhmale commented on May 13, 2024

yeah, i know ghc-mod legacy-interactive is just a replacement of ghc-modi, i mean through the doc here http://www.mew.org/~kazu/proj/ghc-mod/en/ ghc-mod covers all the commands ghc-modi holds, i can't figure out why should there be an interactive mode.

There is no difference, see DanielG/ghc-mod#639

from intellij-haskell.

rikvdkleij avatar rikvdkleij commented on May 13, 2024

@zjhmale I forgot to mention that IntelliJ gets more responsive if you disable autopopup code completion

from intellij-haskell.

zjhmale avatar zjhmale commented on May 13, 2024

thx for mention that, but after i disabled communication with ghc-modi and intellij, i can still get code completion for some symbols, so maybe it's just fine for now. 😄

@zjhmale I forgot to mention that IntelliJ gets more responsive if you disable autopopup code completion

from intellij-haskell.

rikvdkleij avatar rikvdkleij commented on May 13, 2024

You currently only getting completions from getVariants in HaskellReference.

from intellij-haskell.

zjhmale avatar zjhmale commented on May 13, 2024

indeed 😂

You currently only getting completions from getVariants in HaskellReference.

from intellij-haskell.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.