Scripts merged for easily loading and running GHC in GHCi, for fast development iterations

Brandon Allbery allbery.b at gmail.com
Wed Aug 8 22:56:24 UTC 2018


If you're working on e.g. ARM, you may not have a lot of say in how much
RAM you can put into it.

On Wed, Aug 8, 2018 at 6:54 PM Michael Sloan <mgsloan at gmail.com> wrote:

> Good point, I have added a note about it to the wiki page.  Surprising
> that it would be hard to kill.  Do you have swap setup?
>
> For me it takes ~2.7GB initially and 3.5GB after the first reload.  In
> the past I've seen it get all the way up to 9GB so there may be some
> memory leakage.
>
> I have 40GB of ram in my laptop, so I don't notice this much.  I
> highly recommend investing in more memory if it's within your
> financial means.  The productivity boon of being able to use GHCi on
> large projects, or run multiple concurrent docker containers or VMs,
> is huge.
>
> A bit off topic, but sometimes folks are surprised that I spend
> hundreds of dollars on keyboards like the kinesis advantage 2 (which
> is fantastic, btw) or the keyboard.io (really nice too!).  My answer
> is that if I'm using some equipment many hours per day, the cost
> amortizes out.  I ask myself "Would I pay 3 cents to use this keyboard
> for an hour?", in the case of those keyboards, my answer is an
> emphatic YES!  I apply similar reasoning to my main computer hardware,
> though people are used to that being $$$ vs the surprise of $350
> keyboards.
>
> -Michael
>
> On Wed, Aug 8, 2018 at 3:31 PM, Matthew Pickering
> <matthewtpickering at gmail.com> wrote:
> > In practice, how much memory does this use?
> >
> > I find that with 4gb of memory that it is unusable and hard to kill.
> > Perhaps we should add some sort of warning to the page about this.
> >
> > Cheers
> >
> > Matt
> >
> > On Wed, Aug 8, 2018 at 11:12 PM, Michael Sloan <mgsloan at gmail.com>
> wrote:
> >> Now that [D5015] is merged (thanks, monoidal!), -fobject-code no
> >> longer needs to be provided manually.  This also means that you can
> >> run [ghcid] directly in the root of the repo without any arguments.  I
> >> have updated https://ghc.haskell.org/trac/ghc/wiki/Building/InGhci to
> >> use the simpler invocations.
> >>
> >> [D5015]: https://phabricator.haskell.org/D5015
> >> [ghcid]: https://github.com/ndmitchell/ghcid
> >>
> >> On Mon, Aug 6, 2018 at 1:03 AM, Michael Sloan <mgsloan at gmail.com>
> wrote:
> >>> Thanks a bunch for updating the wiki page, Artem!  It was on my todo
> >>> list, but it's been a rather busy week.  I've added an update
> >>> mentioning that it will be possible to run "ghcid" directly without
> >>> args once D5105 is merged.
> >>>
> >>> On Mon, Aug 6, 2018 at 12:55 AM, Artem Pelenitsyn
> >>> <a.pelenitsyn at gmail.com> wrote:
> >>>> I added this to the wiki. It would be nice to have a wrapper similar
> to
> >>>> `run.sh` but for starting ghcid, I believe.
> >>>>
> >>>> --
> >>>> Best wishes,
> >>>> Artem
> >>>>
> >>>> On Sun, 29 Jul 2018 at 10:41 Matthew Pickering <
> matthewtpickering at gmail.com>
> >>>> wrote:
> >>>>>
> >>>>> Can you please update the wiki page?
> >>>>>
> >>>>> https://ghc.haskell.org/trac/ghc/wiki/Building/InGhci
> >>>>>
> >>>>> Matt
> >>>>>
> >>>>> On Sun, Jul 29, 2018 at 6:18 AM, Michael Sloan <mgsloan at gmail.com>
> wrote:
> >>>>> > Hello GHC developers!
> >>>>> >
> >>>>> > Now that D4904 and D4986 are merged, if you have recently built GHC
> >>>>> > then you can use "./utils/ghc-in-ghci/run.sh -fobject-code" to load
> >>>>> > GHC into GHCi (throwing on a "-j8" helps too).  For me, this makes
> >>>>> > development far more pleasant, as often I can make a change and
> try it
> >>>>> > out in only 15 or 20 seconds.  Thanks to Csongor Kiss for writing
> the
> >>>>> > initial ghci script, and Matthew Pickering for posting about it to
> the
> >>>>> > mailinglist, as otherwise I probably wouldn't have known about it.
> >>>>> >
> >>>>> > I wrote a blog post about the topic on my new blog:
> >>>>> > http://www.mgsloan.com/posts/ghcinception/
> >>>>> >
> >>>>> > Once D5015 is merged, the explicit "-fobject-code" won't be needed.
> >>>>> > Once https://ghc.haskell.org/trac/ghc/ticket/15454 is addressed,
> it
> >>>>> > might not be needed at all, leading to even faster loading ;)
> >>>>> >
> >>>>> > Happy ghci-ing!
> >>>>> > -Michael
> >>>>> > _______________________________________________
> >>>>> > ghc-devs mailing list
> >>>>> > ghc-devs at haskell.org
> >>>>> > http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
> >>>>> _______________________________________________
> >>>>> ghc-devs mailing list
> >>>>> ghc-devs at haskell.org
> >>>>> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
>


-- 
brandon s allbery kf8nh
allbery.b at gmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20180808/e145d19c/attachment.html>


More information about the ghc-devs mailing list