I have just been requested to commute three days a week 135 miles away each way from my home (I have not moved) to an office I was never required to attend before the pandemic starting end of September.
If anyone needs remote product/infrastructure/platform engineering or backend developer who has 15 years cloud deployment experience and data center to cloud migration experience, email me on spotter@referentiallabs.com.
Between the continued iteration on the GHC20xx meta-extension mechanisms, further improvements in the JS/wasm backends, and (my favorite) the availability of exception backtraces in base, there is lots in this release to be excited about.
See the Haskell Discourse thread for the full announcement:
Lots of goodness in this release including a few great steps on the road to Dependent Haskell, the long-awaited introduction of exception backtraces, and Javascript FFI support in the Wasm backend.
Sadly, no Windows binaries in this alpha but we expect to have this sorted for alpha 2.
it is perfectly possible to write absolute shit code in #rust or #haskell and it is perfectly possible to write excellent code in #javascript or #perl and shellscripts can be super awesome and lisp doesn't make you a better man and millions of businesses live just fine on mysql and php.
Hi everyone! I am looking for a new role and would appreciate your support. Lately I've been working mostly with functional languages (#Elixir, #Erlang, #Haskell, #Elm) in web development, but I'm also passionate about programming languages and tooling (compilers, static analysis, development environments, etc). Let me know if you see an opening that you think I may enjoy!
#Vervis the reference implementation of @forgefed just released a tech preview of their refactored codebase that is based on the Actor Model. A mirror of the codebase can be found on #Codeberg at:
A big thank you to GoogleOSS for becoming a Functor-level Sponsor! All of our work is made possible by our individual contributors and our sponsors. Thank you so much for your support! #haskell#haskellfoundation
Today I spent a few hours trying to track down a problem deep in a helper module of a complex production application written in #Haskell. Among other things, it involves threads, a monad transformer stack (3 or 4 levels deep, I think?), an SQL database, and HTTP calls to an external service.
In the end, I managed to boil one issue in the code down to the following crucial lines:
forever_mpl :: Monad m => m a -> m b<br></br>forever_mpl m = fix (m >>)<br></br><br></br>forever_mpf :: Monad m => m a -> m b<br></br>forever_mpf m = fix (self -> m >> self)<br></br>
In theory, both of these should be equivalent to forever from the base library. However ...
In one place in the code, using forever_mpl (the first definition) works correctly: It repeats an action forever. But switching to forever_mpf (the second definition) makes the code hang instead (at 0% CPU). Why?!
I know the answer now, so here's a #debugging challenge: Can you think of a reason why these two definitions should behave differently? Can you implement a Monad instance with a >> that distinguishes between them somehow?
The glorious Glasgow Haskell Compiler is preparing for the next GHCxxxx edition. These are bundles of extensions that are considered popular, stable and useful and should be offered to any Haskeller out there. There was already one such edition, GHC2021, replacing the original Haskell standards process after GHC had become basically the only widely used Haskell implementation.
If you want to be part of this proposal, this is your chance, vote now and make Haskell more convenient for yourself!
Got in touch with a company that is looking to hire for Haskell + Elm in Gothenburg, Sweden. Considering how much interest my last static FP job posting drew I figure there might be one or two of y'all in Gbg. Help spread it if you think you know people of interest.
And a completely crazy talk by Ben Lynn about building a Haskell compiler based on an old concept from logic research. Just incredible fun to watch: https://www.youtube.com/watch?v=3kMvXXGXaws
「 Furthermore, the lightweight threading model of Haskell is great for web-server purposes: we handle thousands of requests per second on quite low-end hardware. Interestingly, our CI server that does compilation needs a lot more RAM than our production servers, which is the price you pay for having strong compile-time guarantees, and thereby the efficient runtime 」
Simon Peyton Jones is smartest, nicest and most infectiously-enthusiastic people in the whole of computing. So I'm thrilled to be learning from him this week as he joins me to talk about his long history of pushing #FP & #Haskell to the state of the art; his present work for Epic Games, formalizing Functional Logic Programming with #Verse; and his vision for the future, raising the bar for computing education right from primary schools. ❤️
Hi! Ever wanted to check your cabal projects against the haskell security-advisories database?
Now it has become possible; I have implemented the first prototype of an equivalent to npm or cargo audit, cabal-audit and it now it is in a usable state: https://github.com/haskell/security-advisories/pull/148
there is two ways to run it:
install from source with cabal
(more convenient) nix run github:mangoiv/security-advisories/mangoiv/hsec-cabal#hsec-cabal
soon (next cabal release) this will also work as a plugin, i.e. cabal audit will use the cabal-audit binary in your PATH thanks to @yvan who made that possible.
As the tradition goes, here is my #introduction :celbounceline:
Hello, I am ctrl, your average non-binary transfem catgirl developper. Unsurprisingly, i dabble in #Rust, and i'm trying to learn #Haskell. I also really love to code in #C.
I play a lot of video games, with my top 3 favorites games being #Celeste#BreathOfTheWild and #Payday2.
Sometime i try to speedrun Celeste too :3
I fucking love #Linux, and one-day i'll take a *BSD for a ride, cause it seems really cool.
I kept my twtr account for a while because brands I occasionally reach out to were still exclusively there. It’s now no longer the case so I put the account down for real :)