<html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hi Richard,<div class=""><br class=""></div><div class="">Glad you enjoy it this far!</div><div class=""><br class=""></div><div class="">It's strange that didn't work for you, as I had put a Gitpod start task to automatically open `Tutor1.hs` on startup:</div><div class=""><br class=""></div><div class=""><a href="https://github.com/complyue/GHCiCode/blob/712cec080fd60b99d0ecb2467c980075b1c94c1a/.gitpod.yml#L46-L63" class="">https://github.com/complyue/GHCiCode/blob/712cec080fd60b99d0ecb2467c980075b1c94c1a/.gitpod.yml#L46-L63</a></div><div class="">```yaml</div><div class=""><div style="color: rgb(212, 212, 212); background-color: rgb(30, 30, 30); font-family: Menlo, Monaco, "Courier New", monospace; line-height: 18px; white-space: pre;" class=""><div class="">  <span style="color: #6a9955;" class=""># Note this has to be the last task to make its terminal session shown</span></div><div class="">  <span style="color: #6a9955;" class=""># initially, it can reduce the chance for the IDE to hang up on open</span></div><div class="">  - <span style="color: #569cd6;" class="">name</span>: <span style="color: #ce9178;" class="">Open Welcome File(s)</span></div><div class="">    <span style="color: #569cd6;" class="">command</span>: <span style="color: #c586c0;" class="">|</span></div><div class=""><span style="color: #ce9178;" class="">      # We have to wait IDE ready anyway, a perfect moment to refresh stack</span></div><div class=""><span style="color: #ce9178;" class="">      # package index now</span></div><div class=""><span style="color: #ce9178;" class="">      stack update</span></div><div class=""><span style="color: #ce9178;" class="">      # Note `gp open` will fail until the IDE is up and ready, VSCode takes</span></div><div class=""><span style="color: #ce9178;" class="">      # more time than Theia as time being, keep attempting until success</span></div><div class=""><span style="color: #ce9178;" class="">      WelcomeFile='/workspace/GHCiCode/README.md'</span></div><div class=""><span style="color: #ce9178;" class="">      # gp open won't work until the IDE GUI is ready</span></div><div class=""><span style="color: #ce9178;" class="">      until gp open ${WelcomeFile}; do</span></div><div class=""><span style="color: #ce9178;" class="">        echo "Waiting IDE activated ..."</span></div><div class=""><span style="color: #ce9178;" class="">        sleep 1</span></div><div class=""><span style="color: #ce9178;" class="">      done</span></div><div class=""><span style="color: #ce9178;" class="">      echo "Showing tutorial(s) ..."</span></div><div class=""><span style="color: #ce9178;" class="">      # Safe to open more files from now on</span></div><div class=""><span style="color: #ce9178;" class="">      gp open '/workspace/GHCiCode/ghci-code/tutor/Tutor1.hs'</span></div><br class=""></div></div><div class="">```</div><div class=""><br class=""></div><div class="">Seems Gitpod is still some clunky, may related to their recent support of VSCode. Gitpod used to support Eclipse Theia only, Theia should be more stable w.r.t. Gitpod features, but on the other hand VSCode is much more featureful & stable than Eclipse Theia w.r.t. IDE features.</div><div class=""><br class=""></div><div class="">Anyway the manual operations you've found should just work, thanks for sharing!</div><div class=""><br class=""></div><div class="">Btw, I recently played with VSCode's Remote SSH feature, it's quite usable with my own Linux servers. Say only if you have a private Linux server/station reachable over SSH, you can connect VSCode IDE via SSH, the IDE UI can run on macOS, Windows and etc. (ChromeBooks or even Android tablets are said to work too but I haven't used one), so you can get native IDE UI with your favorite device, and the compilers and other toolings (cabal, stack, els e.g.) run on the server. I'm surprised to see a long running `stack build` task in the IDE's terminal view will not be killed after I disconnect the IDE, later I reopen the same folder over SSH, it's still there and running. This means now you can have good experience with a portable low-profile laptop or tablet anywhere with SSH connection to any Linux server to do software development.</div><div class=""><br class=""></div><div class="">Cheers,</div><div class="">Compl</div><div class=""><br class=""></div><div class=""><div><br class=""><blockquote type="cite" class=""><div class="">On 2021-04-26, at 23:12, Richard Eisenberg <<a href="mailto:rae@richarde.dev" class="">rae@richarde.dev</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html; charset=us-ascii" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hi Compl,<div class=""><br class=""></div><div class="">Thanks for building this! Having a proper web-based IDE would indeed be a boon for Haskell.</div><div class=""><br class=""></div><div class="">Just in case others try this: I had a hard time figuring out how to start. Eventually, I found the `ghci-code` folder in the panel at the left, and then some Haskell files in there. I went into the `tutor` directory and opened up `Tutor1.hs`, which has "Run cell" widgets. Clicking one launched GHCi. Then I could get my way toward loading the files I wanted. I'm sure there's a better way, but I have no experience with VSCode, never mind <a href="http://gitpod.io/" class="">gitpod.io</a>.</div><div class=""><br class=""></div><div class="">Still, in just a few minutes of tinkering, I found this to be a far better online experience than I had previously encountered. It still would be nice to have an even lighter-weight "here's a .hs file and you can load it in GHCi", but this is great for serious development (it seems).</div><div class=""><br class=""></div><div class="">Thanks!</div><div class="">Richard</div><div class=""><br class=""></div><div class=""><div class=""><blockquote type="cite" class=""><div class="">On Apr 22, 2021, at 5:19 AM, YueCompl via Haskell-Cafe <<a href="mailto:haskell-cafe@haskell.org" class="">haskell-cafe@haskell.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html; charset=us-ascii" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Dear Cafe,<div class=""><br class=""></div><div class="">I'd like to share that I find that, we can have rather smooth developer experience for Haskell, on cloud, now. </div><div class=""><br class=""></div><div class="">Gitpod (<a href="https://gitpod.io/" class="">https://gitpod.io</a>) recently supported VSCode in addition to Eclipse Theia, making the UX much more smoother, with proper Gitpod workspace setup, now it's much easier for Haskell beginners, as well as chromeOS and Windows users to painlessly onboard modern Haskell.</div><div class=""><br class=""></div><div class="">Github codespaces (<a href="https://github.com/features/codespaces" class="">https://github.com/features/codespaces</a>) is up coming too, there sure will be industry strength cloud infrastructures for serious Haskell development soon.</div><div class=""><br class=""></div><div class="">And the setup can be fully automated, a full fledged Cloud IDE for modern Haskell development, is only a click away, see my demo:</div><div class=""><br class=""></div><div class=""><a href="https://github.com/complyue/GHCiCode#readme" class="">https://github.com/complyue/GHCiCode#readme</a></div><div class=""><br class=""></div><div class="">I also expect more beginner-friendly tutorials can be written this way, especially for Windows users, they'll be able to touch & feel the mass without going through painful setup procedures.</div><div class=""><br class=""></div><div class="">Sincerely,</div><div class="">Compl</div><div class=""><br class=""></div></div>_______________________________________________<br class="">Haskell-Cafe mailing list<br class="">To (un)subscribe, modify options or view archives go to:<br class=""><a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" class="">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br class="">Only members subscribed via the mailman list are allowed to post.</div></blockquote></div><br class=""></div></div></div></blockquote></div><br class=""></div></body></html>