# Tryhaskell.org has shut down

**URL:** <https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389>\
**Category:** Announcements\
**Created:** [July 11, 2026, 4:02pm UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389 "2026-07-11T16:02:32Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![tomsmeding](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/tomsmeding/32/2344_2.png) [@tomsmeding](https://discourse.haskell.org/u/tomsmeding)\
**Post date:** [July 11, 2026, 4:02pm UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/1 "2026-07-11T16:02:32Z")

</div>

The Try Haskell service, which @chrisdone has been running for more than a decade and a half, has recently been [shut down](https://tryhaskell.org). While I find it completely understandable and, indeed, normal that interests and priorities shift and open source projects get abandoned over time, this particular one has a very visible effect: the “Try it!” box on [https://haskell.org](https://haskell.org) is now broken without any indication in the UI.

I think something must be done here, at least to fix the Haskell homepage. Whether that is removing the “Try it!” box, reinstating the tryhaskell backend somewhere else, replacing the backend with the [playground](https://play.haskell.org) (which only works if no state is needed across evaluations, and it does seem like the current JS allows some kind of persistent filesystem (?)), or something else, is not something I have a strong opinion on. The playground is there to be used for this purpose, if people want.

---

<div class="post-metadata">

**Author:** ![Ambrose](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/ambrose/32/5672_2.png) [@Ambrose](https://discourse.haskell.org/u/Ambrose)\
**Post date:** [July 11, 2026, 4:46pm UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/2 "2026-07-11T16:46:40Z")

</div>

I wonder if we can now have tryhaskell be served purely statically?

build it with wasm and “share” can just encode the code into the query string

then the entire thing would be served out of a CDN

---

<div class="post-metadata">

**Author:** ![tomsmeding](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/tomsmeding/32/2344_2.png) [@tomsmeding](https://discourse.haskell.org/u/tomsmeding)\
**Post date:** [July 11, 2026, 4:57pm UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/3 "2026-07-11T16:57:17Z")

</div>

As far as I know (but I’m happy to be corrected), the GHC WASM work is cool enough now to be able to compile GHC to workable WASM, but not enough to make ghci work. (My source here is the last section of [this post](https://www.tweag.io/blog/2024-11-21-ghc-wasm-th-ghci/).) The demo of this [here](https://haskell-wasm.github.io/ghc-in-browser/) downloads a ~49 MB blob, which is excessive for [haskell.org](http://haskell.org).

There is also a WASM build of MicroHS, apparently, that does have an [interpreter demo](https://microhs.org/web-mhs/); this one is particularly nice because the downloaded blob is just 2.6 MB, or 1.6 MB gzip’d if your browser does that. It does still take about 9 seconds to get to a prompt on my PC and ~16 seconds on my smartphone, both of which have fast CPUs. (These timings are from a hot browser cache.) This still feels very long for a quick demo on the Haskell home page.

---

<div class="post-metadata">

**Author:** ![tomjaguarpaw](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/tomjaguarpaw/32/1230_2.png) [@tomjaguarpaw](https://discourse.haskell.org/u/tomjaguarpaw)\
**Post date:** [July 11, 2026, 5:58pm UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/4 "2026-07-11T17:58:11Z")

</div>

> [@tomsmeding](#):
>
> the “Try it!” box on [https://haskell.org](https://haskell.org) is now broken without any indication in the UI

Thanks. Tracking at [Try Haskell has shut down · Issue #386 · haskell-infra/www.haskell.org · GitHub](https://github.com/haskell-infra/www.haskell.org/issues/386)

---

<div class="post-metadata">

**Author:** ![mchav](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/mchav/32/5143_2.png) [@mchav](https://discourse.haskell.org/u/mchav)\
**Post date:** [July 11, 2026, 6:17pm UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/5 "2026-07-11T18:17:29Z")

</div>

MicroHs is a defensible choice. I’m not sure someone that wants to try Haskell quickly in a browser cares about every single GHC affordance. It’s a 2MB bundle so it wouldn’t overwhelm most browsers but maybe work can be done to make it slimmer for this purpose.

cc: @augustss

---

<div class="post-metadata">

**Author:** ![augustss](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/augustss/32/887_2.png) [@augustss](https://discourse.haskell.org/u/augustss)\
**Post date:** [July 11, 2026, 7:10pm UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/6 "2026-07-11T19:10:28Z")

</div>

If be happy to help creating a bundle for trying Haskell. I think the smallest size we can hope for is about 1.3M. I will also investigate why the startup is so slow.

I’m afraid I don’t remember what tryhaskell looked like, so I’m not sure what we are aiming for.

---

<div class="post-metadata">

**Author:** ![dmjio](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/dmjio/32/5348_2.png) [@dmjio](https://discourse.haskell.org/u/dmjio)\
**Post date:** [July 12, 2026, 10:22pm UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/7 "2026-07-12T22:22:59Z")

</div>

That’s what [https://try.haskell-miso.org](https://try.haskell-miso.org) is doing, only static assets, no server. It uses @TerrorJack 's work [here](https://github.com/ghc/ghc/tree/master/testsuite/tests/ghc-api-browser). Maybe we can just copy this.

---

<div class="post-metadata">

**Author:** ![tomsmeding](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/tomsmeding/32/2344_2.png) [@tomsmeding](https://discourse.haskell.org/u/tomsmeding)\
**Post date:** [July 12, 2026, 11:16pm UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/8 "2026-07-12T23:16:57Z")

</div>

I think this is the same approach as is taken in the GHC WASM demo I already shared in post 3 above ([here](https://haskell-wasm.github.io/ghc-in-browser/)), which is by the same author. While it’s GHC, and it’s really cool, it’s not a REPL, and it downloads a ~49 MB blob (~52 MB for the miso playground, it seems). I think that’s excessive, although it does load in about 3 seconds on my PC, which is faster than the microhs playground (currently).

EDIT: excessive for [haskell.org](http://haskell.org), I mean, because of its wide reach. 50 MB is a rather large bandwidth-eater for a mobile user on a limited plan, for what is a cute but ultimately (in the current incarnation with the little “23 \* 63” tutorial) relatively whimsical feature.

---

<div class="post-metadata">

**Author:** ![augustss](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/augustss/32/887_2.png) [@augustss](https://discourse.haskell.org/u/augustss)\
**Post date:** [July 12, 2026, 11:48pm UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/9 "2026-07-12T23:48:56Z")

</div>

I’m investigating why the MicroHs demo is so slow to start. When running the WASM in node.js it takes about 0.3s to start, so something is wrong.

I’ve changed how’s it’s compiled, so now the blob is 1.6M.

---

<div class="post-metadata">

**Author:** ![Ambrose](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/ambrose/32/5672_2.png) [@Ambrose](https://discourse.haskell.org/u/Ambrose)\
**Post date:** [July 13, 2026, 12:20am UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/10 "2026-07-13T00:20:22Z")

</div>

I think a fun upgrade of tryhaskell using wasm would be like

- multiple Haskell implementations. MicroHs, Hugs, GHC (with a bandwidth warning)
- repl and editor with query string save support for the files and repl history
- Have a feature that lets try out packages from Hackage in an easy way. ofc some don’t work in the browser, but many do. Imagine reading Hackage docs and you can just open a browser tab and get a repl for that code!

---

<div class="post-metadata">

**Author:** ![AntC2](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/antc2/32/1872_2.png) [@AntC2](https://discourse.haskell.org/u/AntC2)\
**Post date:** [July 13, 2026, 1:27am UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/11 "2026-07-13T01:27:41Z")

</div>

(Also mailing lists seem broken: `Mailman REST API not available …`, so [haskell.org](http://haskell.org) is looking rather sad.)

> [@augustss](#):
>
> what tryhaskell looked like, so I’m not sure what we are aiming for.

There’s a reddit thread from 17 years ago ‘Try Haskell now with :t and …’ is about the best doco I could find. It is (was) a REPL where you could type expressions, see those eval’d. It supported a few GHCi commands, like `:t`. But not `:l`, nor could you enter declarations like `data, class, instance`, only local decls via `let, where`. So much less capability than TryMicroHS.

P.S. there seems to be a (dodgy) clone at [haskellmooc.co.uk](http://haskellmooc.co.uk) Dunno how long that will survive.

---

<div class="post-metadata">

**Author:** ![augustss](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/augustss/32/887_2.png) [@augustss](https://discourse.haskell.org/u/augustss)\
**Post date:** [July 13, 2026, 11:40am UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/12 "2026-07-13T11:40:08Z")

</div>

Start-up is significantly faster now. It’s not good to call call `emscripten_sleep(0)` to often.

---

<div class="post-metadata">

**Author:** ![augustss](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/augustss/32/887_2.png) [@augustss](https://discourse.haskell.org/u/augustss)\
**Post date:** [July 13, 2026, 12:37pm UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/13 "2026-07-13T12:37:39Z")

</div>

@chrisdone Are you willing to make the code for tryHaskell public?

---

<div class="post-metadata">

**Author:** ![chrisdone](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/chrisdone/32/1408_2.png) [@chrisdone](https://discourse.haskell.org/u/chrisdone)\
**Post date:** [July 13, 2026, 3:51pm UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/14 "2026-07-13T15:51:56Z")

</div>

Here you go! [GitHub - chrisdone-archive/tryhaskell: Try Haskell · GitHub](https://github.com/chrisdone-archive/tryhaskell)

---

<div class="post-metadata">

**Author:** ![AntC2](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/antc2/32/1872_2.png) [@AntC2](https://discourse.haskell.org/u/AntC2)\
**Post date:** [July 13, 2026, 9:41pm UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/15 "2026-07-13T21:41:26Z")

</div>

I’m not quite sure who’s done what, but [haskell.org](http://haskell.org)’s front page is rejigged; tryHaskell is gone; there’s a new ‘Try in the Playground’ which loads a random example hs module; you can edit and/or run; you can choose which release of ghc to try it against. Cool! thank you.

(Also it runs on my ancient Windows machine/browser, unlike MicroHS.)

(Also mailing lists are back. thank you, thank you)

---

<div class="post-metadata">

**Author:** ![tomsmeding](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/tomsmeding/32/2344_2.png) [@tomsmeding](https://discourse.haskell.org/u/tomsmeding)\
**Post date:** [July 13, 2026, 9:52pm UTC](https://discourse.haskell.org/t/tryhaskell-org-has-shut-down/14389/16 "2026-07-13T21:52:58Z")

</div>

This is what happened:

- [Try Haskell has shut down · Issue #386 · haskell-infra/www.haskell.org · GitHub](https://github.com/haskell-infra/www.haskell.org/issues/386) (already posted in post 4 above)
- [Replace Try Haskell with link to Haskell playground by tomjaguarpaw · Pull Request #387 · haskell-infra/www.haskell.org · GitHub](https://github.com/haskell-infra/www.haskell.org/pull/387)
- [Remove the "Try it!" block now that tryhaskell.org is gone by tomsmeding · Pull Request #388 · haskell-infra/www.haskell.org · GitHub](https://github.com/haskell-infra/www.haskell.org/pull/388)

EDIT: this is a temporary solution to un-break the front page. And regarding the playground: happy that you like it, but it was already linked from the front page before, just a little bit less conspicuously. 🙂
