#Haskell

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Interpreting Brainfuck in Haskell

abhinavsarkar.net/posts/brainf

Discussions: discu.eu/q/https://abhinavsark

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Porting PFP from Haskell to OCaml

github.com/lewis-carson/PFPCaml

Discussions: discu.eu/q/https://github.com/

José A. Alonso's avatar
José A. Alonso

@[email protected]

A new perspective on lenses. ~ Sandy Maguire. reasonablypolymorphic.com/blog

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Haskell: A Great Procedural Language

entropicthoughts.com/haskell-p

Discussions: discu.eu/q/https://entropictho

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared January 18, 2025. jaalonso.github.io/vestigium/p

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Mastermind. jaalonso.github.io/exercitium/

Philipp :emacs: :nixos:'s avatar
Philipp :emacs: :nixos:

@[email protected]

and PSA to save you some time: if you're evaluating which library to pick among a dozen, just choose the one that isn't broken in . You're welcome.

José A. Alonso's avatar
José A. Alonso

@[email protected]

Listopia: List manipulation library inspired by Haskell package Data.List. ~ Ito Dimercel. github.com/Dimercel/listopia

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Call for Nominations: Haskell.org Committee

haskell.org/haskell-org-commit

Discussions: discu.eu/q/https://www.haskell

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared January 17, 2025. jaalonso.github.io/vestigium/p

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Determinación de los elementos minimales. jaalonso.github.io/exercitium/

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Research software engineer at Epic. tinyurl.com/23jucqu4

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared January 16, 2025. jaalonso.github.io/vestigium/p

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Fast Haskell, Redux

jtobin.io/fast-haskell-redux

Discussions: discu.eu/q/https://jtobin.io/f

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Now added initial support for Haskell - auto-generate Haskell data models from Scala case classes - early preview, will extend further in hackathon

codeberg.org/jjba23/dmtscala

Discussions: discu.eu/q/https://codeberg.or

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Suma de los números amigos menores que n. jaalonso.github.io/exercitium/

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Sucesión de números amigos. jaalonso.github.io/exercitium/

José A. Alonso's avatar
José A. Alonso

@[email protected]

The Haskell Unfolder Episode 38: tasting and testing CUDA (map, fold, scan). ~ Edsko de Vries, Andres Löh. youtube.com/live/ww4C3jlsesw?s

Lira :progresspride_i_flag:'s avatar
Lira :progresspride_i_flag:

@[email protected]

:boosts_ok_gay: lira.kraamwinkel.be/articles/h

A while ago I wrote about the Foreign Function Interface in Haskell and how to make a desktop application with Qt6.

The following topics are covered:

  • Using foreign import to call C or C++-functions (without name mangling);
  • Using foreign export to call Haskell-functions in C or C++
  • How to create pointers that get freed automatically to prevent memory issues;
  • How to create arrays in Haskell;
  • How to create structs in Haskell (manually and via GStorable);
  • How to create function pointers in Haskell;
  • Why MonadReader (IORef [a]) m is better for storing pointers than MonadState [a] m;
  • The difference between ccall and capi

I already shared it on my previous account back then, but I am posting it here now too :)

José A. Alonso's avatar
José A. Alonso

@[email protected]

An agda2hs-compatible representation of exact real arithmetic. ~ Viktor Csimma. csimmaviktor.web.elte.hu/acorn

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared January 15, 2025. jaalonso.github.io/vestigium/p

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

The Haskell Unfolder Episode 38: tasting and testing CUDA (map, fold, scan)

youtube.com/watch?index=38&lis

Discussions: discu.eu/q/https://www.youtube

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Research Software Engineer at Epic

discourse.haskell.org/t/resear

Discussions: discu.eu/q/https://discourse.h

DiazCarrete's avatar
DiazCarrete

@[email protected]

Hit the translate button and read about some interesting-looking libraries.
zenn.dev/konn/articles/2025-01

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Sucesión de números amigos. jaalonso.github.io/exercitium/

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared January 14, 2025. jaalonso.github.io/vestigium/p

Lira :progresspride_i_flag:'s avatar
Lira :progresspride_i_flag:

@[email protected]

:boosts_ok_gay: lira.kraamwinkel.be/articles/h

A while ago I wrote about the Foreign Function Interface in Haskell and how to make a desktop application with Qt6.

The following topics are covered:

  • Using foreign import to call C or C++-functions (without name mangling);
  • Using foreign export to call Haskell-functions in C or C++
  • How to create pointers that get freed automatically to prevent memory issues;
  • How to create arrays in Haskell;
  • How to create structs in Haskell (manually and via GStorable);
  • How to create function pointers in Haskell;
  • Why MonadReader (IORef [a]) m is better for storing pointers than MonadState [a] m;
  • The difference between ccall and capi

I already shared it on my previous account back then, but I am posting it here now too :)

Andres Löh's avatar
Andres Löh

@[email protected]

The is back! In tomorrow's episode, we'll take a look at CUDA and write some simple functions in it. We'll also show how to interface from Haskell to CUDA and how to use QuickCheck to test CUDA functions from Haskell.

youtube.com/watch?v=ww4C3jlses

José A. Alonso's avatar
José A. Alonso

@[email protected]

Hell (Haskell shell): Year in review. ~ Chris Done. chrisdone.com/posts/hell-year-

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Equality on recursive λ-terms

gist.github.com/VictorTaelin/1

Discussions: discu.eu/q/https://gist.github

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Haskell recap for week 2/2025

discu.eu/weekly/haskell/2025/2/

Get RSS feeds and support this bot with the premium plan: discu.eu/premium

Lionhairdino's avatar
Lionhairdino

@[email protected]

하스켈 공부를 시작하고, 펑터를 슬슬 쓰기 시작하면서, Applicative 로 넘어갈 무렵에 볼만한 글입니다. 컨텍스트란 말이 편해지면, 펑터 다음 진도에 도움이 많이 됩니다.

최근 펑터를 공부하면서, 펑터가 달리 보여 5년전 글의 컨텍스트, Applicative, Traversable 내용을 보강해 봤습니다.

lionhairdino.github.io/posts/2

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared January 11, 2025. jaalonso.github.io/vestigium/p

Lionhairdino's avatar
Lionhairdino

@[email protected]

예전 펑터 글에 "펑터 값을 프리미티브한 값처럼 쓰고 싶다"라는 목표를 먼저 세우고, `<$>`와 `<*>`등을 살펴보는 내용을 추가했습니다.
lionhairdino.github.io/posts/2

DiazCarrete's avatar
DiazCarrete

@[email protected]

Trying to learn persistent/esqueleto

yesodweb.com/book/persistent

hackage.haskell.org/package/pe
persistent-postgresql hackage.haskell.org/package/pe
the Persistent entity syntax hackage.haskell.org/package/pe
esqueleto hackage.haskell.org/package/es

Screen capture from the Yesod book.

However, there is one issue that newcomers are often bothered by: why are IDs and values completely separate? It seems like it would be very logical to embed the ID inside the value. In other words, instead of having:

data Person = Person { name :: String }
have

data Person = Person { personId :: PersonId, name :: String }

Well, there’s one problem with this right off the bat: how do we do an insert? If a Person needs to have an ID, and we get the ID by inserting, and an insert needs a Person, we have an impossible loop. We could solve this with undefined, but that’s just asking for trouble.
Screen capture from the Yesod book. However, there is one issue that newcomers are often bothered by: why are IDs and values completely separate? It seems like it would be very logical to embed the ID inside the value. In other words, instead of having: data Person = Person { name :: String } have data Person = Person { personId :: PersonId, name :: String } Well, there’s one problem with this right off the bat: how do we do an insert? If a Person needs to have an ID, and we get the ID by inserting, and an insert needs a Person, we have an impossible loop. We could solve this with undefined, but that’s just asking for trouble.
"One last trick you can do with attributes is to specify the names to be used for the SQL tables and columns. This can be convenient when interacting with existing databases."
"One last trick you can do with attributes is to specify the names to be used for the SQL tables and columns. This can be convenient when interacting with existing databases."
Lionhairdino's avatar
Lionhairdino

@[email protected]

예전 펑터 글에 "펑터 값을 프리미티브한 값처럼 쓰고 싶다"라는 목표를 먼저 세우고, `<$>`와 `<*>`등을 살펴보는 내용을 추가했습니다.
lionhairdino.github.io/posts/2

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Números amigos. jaalonso.github.io/exercitium/

José A. Alonso's avatar
José A. Alonso

@[email protected]

Alpha beta pruning with the selection monad. ~ Johannes Hartmann, Jeremy Gibbons. trendsfp.github.io/abstracts/p

José A. Alonso's avatar
José A. Alonso

@[email protected]

Shallowly embedded functions. ~ Mart Lubbers, Pieter Koopman, Niek Janssen. trendsfp.github.io/abstracts/p

José A. Alonso's avatar
José A. Alonso

@[email protected]

Using GHC core to normalise student programs. ~ Matilda Blomqvist, Alex Gerdes. trendsfp.github.io/abstracts/p

José A. Alonso's avatar
José A. Alonso

@[email protected]

On the correctness of Barron and Strachey’s cartesian product function. ~ Wouter Swierstra, Jason Hemann. trendsfp.github.io/abstracts/p

José A. Alonso's avatar
José A. Alonso

@[email protected]

Categories and Haskell (An introduction to the mathematics behind modern functional programming). ~ Jan-Willem Buurlage. raw.githubusercontent.com/jwbu

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared January 10, 2025. jaalonso.github.io/vestigium/p

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Máxima suma de caminos en un triángulo. jaalonso.github.io/exercitium/

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

[ANN] Yolc - a Haskell-powered, safe, expressive, fun language for Ethereum

discourse.haskell.org/t/ann-yo

Discussions: discu.eu/q/https://discourse.h

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Unable to build botan

github.com/haskell-cryptograph

Discussions: discu.eu/q/https://github.com/

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared January 9, 2025. jaalonso.github.io/vestigium/p

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Case Study — Using a JavaScript component inside a Haskell application

blog.haskell.org/case-study-fo

Discussions: discu.eu/q/https://blog.haskel

HaskellOrg's avatar
HaskellOrg

@[email protected] · Reply to HaskellOrg's post

Update n°40 from the GHC team at IOG

engineering.iog.io/2025-01-09-

Highlights:
• Luite finalized the patch adding compiler flags to to switch off speculative evaluation.

• Sylvain worked on bootstrapping GHC with Cabal.

José A. Alonso's avatar
José A. Alonso

@[email protected]

Using a JavaScript component inside a Haskell application. ~ Mateusz Goślinowski. blog.haskell.org/case-study-fo

HaskellOrg's avatar
HaskellOrg

@[email protected]

New post on the blog: “Case Study — Using a JavaScript component inside a Haskell application”

blog.haskell.org/case-study-fo

Jons Mostovojs's avatar
Jons Mostovojs

@[email protected] · Reply to Jons Mostovojs's post

@tolmasky if I had to implement reflection in Lean4 or Agda, I would try to mimic 's typeable.

But also, I think there must be a very important point here! In dependently typed languages, entities can have more than one type!

(frac 1 2) : Frac 2 4, but also (frac 1 2) : Frac 4 8, for instance.

[1] : ListLE 1, but also [1]: ListLE 42.

So, perhaps the whole idea of general reflaction is defeated by this property. And this is why offers superior reflection[1]. Note that is in itself!

I don't know if I'm mansplaining here or if you're aware of haskell's Typeable, but here is a simple demo of its capabilities: github.com/cognivore/typeable-

In , I would emulate it by defining asking the user to provide explict instances over an enum, just as you wrote! The existential quantification trick can be done in by carrying the instance inside a structure that ties the knot between the type and an entity which has this type:

```
structure Stuff where
α : Type
val : α
inst : Reflect α
```

You won't be able to construct it unless α is Reflect.

* * *

[1]: hackage.haskell.org/package/ba

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

GHC 9.12 & Cabal 3.14 releases

blog.haskell.org/ghc-9-12-caba

Discussions: discu.eu/q/https://blog.haskel

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Haskell recap for week 1/2025

discu.eu/weekly/haskell/2025/1/

Get RSS feeds and support this bot with the premium plan: discu.eu/premium

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared January 4, 2025. jaalonso.github.io/vestigium/p

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

McHale (2024) Streaming Compression via Laziness

vmchale.com/static/serve/lazy-

Discussions: discu.eu/q/http://vmchale.com/

HaskellOrg's avatar
HaskellOrg

@[email protected]

GHC 9.12 & Cabal 3.14 released!

Read the announcement at blog.haskell.org/ghc-9-12-caba

GHC 9.12 & Cabal 3.14
GHC 9.12 & Cabal 3.14
Abhinav 🌏's avatar
Abhinav 🌏

@[email protected]

In my quest of solving problems in interesting ways, this time I solved the 2020 problem "Seating System" with comonads and stencils in . Read my latest post about it: abhinavsarkar.net/posts/solvin

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Solving Advent of Code “Seating System” with Comonads and Stencils

abhinavsarkar.net/posts/solvin

Discussions: discu.eu/q/https://abhinavsark

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Policy regarding taking over Hackage packages

discourse.haskell.org/t/policy

Discussions: discu.eu/q/https://discourse.h

Abhinav 🌏's avatar
Abhinav 🌏

@[email protected]

In my quest of solving problems in interesting ways, this time I solved the 2020 problem "Seating System" with comonads and stencils in . Read my latest post about it: abhinavsarkar.net/posts/solvin

Abhinav 🌏's avatar
Abhinav 🌏

@[email protected]

In my quest of solving problems in interesting ways, this time I solved the 2020 problem "Seating System" with comonads and stencils in . Read my latest post about it: abhinavsarkar.net/posts/solvin

Lionhairdino's avatar
Lionhairdino

@[email protected]

a는 Identity a라고 본다면, 세상의 모든 값을 펑터 값으로 생각할 수 있습니다. 항상 함수를 적용할 때는 f <$> a라 쓸 수 있습니다. 간단한 프리미티브 값이든, 복잡한 계산 후 받는 값이든 모두 같은 것으로 취급할 수 있습니다.

FRP에서 Event, Behavior를 일반 값처럼 쓰기 위해, 특별한 테크닉이 필요하지 않습니다. 원래 펑터가 그런 것입니다.

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Caminos en un triángulo. jaalonso.github.io/exercitium/

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared January 3, 2025. jaalonso.github.io/vestigium/p

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Mayor órbita de la sucesión de Collatz. jaalonso.github.io/exercitium/

José A. Alonso's avatar
José A. Alonso

@[email protected]

Parallel SAT solver. ~ Yixuan Li, Jiaqian Li, Phoebe Wang. cs.columbia.edu/~sedwards/clas

José A. Alonso's avatar
José A. Alonso

@[email protected]

Parallel QuickHull algorithm in Haskell. ~ George Morgulis, Henry Lin. cs.columbia.edu/~sedwards/clas

José A. Alonso's avatar
José A. Alonso

@[email protected]

Modular probabilistic programming with algebraic effects. ~ Oliver Goldstein, Ohad Kammar. arxiv.org/abs/2412.19826

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared January 2, 2025. jaalonso.github.io/vestigium/p

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Ternas pitagóricas con suma dada. jaalonso.github.io/exercitium/

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared January 1, 2025. jaalonso.github.io/vestigium/p

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

[Design] Dataframes in Haskell

discourse.haskell.org/t/design

Discussions: discu.eu/q/https://discourse.h

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

[ANN] GHCup 0.1.40.0 released

discourse.haskell.org/t/ann-gh

Discussions: discu.eu/q/https://discourse.h

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Aztecs: A type-safe and friendly ECS for Haskell

github.com/matthunz/aztecs

Discussions: discu.eu/q/https://github.com/

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Suma de múltiplos de 3 o de 5. jaalonso.github.io/exercitium/

Abhinav 🌏's avatar
Abhinav 🌏

@[email protected]

Just in time, my special for December 2024: notes.abhinavsarkar.net/2024/l.

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

erebe/greenclip: Simple clipboard manager to be integrated with rofi

github.com/erebe/greenclip

Discussions: discu.eu/q/https://github.com/

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Exported for tests only: Precise control over API visibility with custom warnings

tech.scrive.com/exported-for-t

Discussions: discu.eu/q/https://tech.scrive

Abhinav 🌏's avatar
Abhinav 🌏

@[email protected]

Just in time, my special for December 2024: notes.abhinavsarkar.net/2024/l.

MangoIV's avatar
MangoIV

@[email protected]

hackage now has syntax highlighting 🥹
See e.g.
hackage.haskell.org/package/ht

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared December 30, 2024. jaalonso.github.io/vestigium/p

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Haskell recap for week 52/2024

discu.eu/weekly/haskell/2024/5

Get RSS feeds and support this bot with the premium plan: discu.eu/premium

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Overloading the lambda abstraction in Haskell

acatalepsie.fr/posts/overloadi

Discussions: discu.eu/q/https://acatalepsie

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Overloading the lambda abstraction in Haskell

acatalepsie.fr/posts/overloadi

Discussions: discu.eu/q/https://acatalepsie

José A. Alonso's avatar
José A. Alonso

@[email protected]

Generalized Dijkstra in Haskell. ~ Lucas Escot. acatalepsie.fr/posts/haskell-d

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared December 29, 2024. jaalonso.github.io/vestigium/p

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Category Theory Illustrated

abuseofnotation.github.io/cate

Discussions: discu.eu/q/https://abuseofnota

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Exponente en la factorización. jaalonso.github.io/exercitium/

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Excellent Haskell course!

youtube.com/@haskellhutt

Discussions: discu.eu/q/https://www.youtube

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared December 26, 2024. jaalonso.github.io/vestigium/p

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Reconocimiento de potencias de 4. jaalonso.github.io/exercitium/

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared December 25, 2024. jaalonso.github.io/vestigium/p

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared December 24, 2024. jaalonso.github.io/vestigium/p

José A. Alonso's avatar
José A. Alonso

@[email protected]

: El teorema de Navidad de Fermat. glc.us.es/~jalonso/exercitium/

Lionhairdino's avatar
Lionhairdino

@[email protected]

크리스마스에는 모나드 를 봅시다.
lionhairdino.github.io/posts/2

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Show HN: I Ported GHC Haskell Compiler to Windows 11 ARM. MC Gift

gitlab.haskell.org/ghc/ghc/-/i

Discussions: discu.eu/q/https://gitlab.hask

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Producto de los elementos de la diagonal principal. jaalonso.github.io/exercitium/

José A. Alonso's avatar
José A. Alonso

@[email protected]

Compiling dependent type preconditions to runtime checks with Agda2Hs. ~ Jakob Naucke. repository.tudelft.nl/file/Fil

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

How to collect performance statistics with Cabal

blog.haskell.org/how-to-collec

Discussions: discu.eu/q/https://blog.haskel

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Haskell recap for week 51/2024

discu.eu/weekly/haskell/2024/5

Get RSS feeds and support this bot with the premium plan: discu.eu/premium

HaskellOrg's avatar
HaskellOrg

@[email protected]

The Cabal Manual now has a guide on how to collect performance statistics of Haskell applications. Read more at
blog.haskell.org/how-to-collec

HaskellOrg's avatar
HaskellOrg

@[email protected]

Interlude's guest Tom Ellis works at Groq, using Haskell to compile AI models to specialized hardware. Listen to this episode about stability of both GHC and Haskell libraries, effects, and strictness.

haskell.foundation/podcast/60/

HaskellOrg's avatar
HaskellOrg

@[email protected] · Reply to HaskellOrg's post

Update n°39 from the GHC team at IOG

engineering.iog.io/2024-12-19-

Highlights:
• Sylvain kept working on building GHC with cabal-install instead of Hadrian

• Jeff: created a GHC JS Backend matrix room

• Luite Is back from vacation and has been preparing the GHC 9.6.7 release. Welcome back Luite!

HaskellOrg's avatar
HaskellOrg

@[email protected]

Update n°38 from the GHC team at IOG

engineering.iog.io/2024-11-28-

Highlights:
• Sylvain explored how to build GHC with cabal instead of hadrian
• Jeff investigated variations in the Plutus benchmark suite, possibly related to garbage collection
• Luite worked on preparing the upcoming GHC 9.6.7

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Haskell Interlude 60: Tom Ellis

haskell.foundation/podcast/60/

Discussions: discu.eu/q/https://haskell.fou

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Generalized Dijkstra in Haskell

acatalepsie.fr/posts/haskell-d

Discussions: discu.eu/q/https://acatalepsie

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Aztecs: A type-safe and friendly ECS for Haskell

github.com/matthunz/aztecs

Discussions: discu.eu/q/https://github.com/

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared December 21, 2024. jaalonso.github.io/vestigium/p

José A. Alonso's avatar
José A. Alonso

@[email protected]

Solving perfect numbers quickly with Haskell. ~ Andrew MacGillivray. gist.github.com/amacgillivray/

José A. Alonso's avatar
José A. Alonso

@[email protected]

An imperative programmer tries to learn Haskell. ~ Thane Thomson. hatwd.com/p/an-imperative-prog

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared December 20, 2024. jaalonso.github.io/vestigium/p

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Project: M36 (Relational Algebra Engine)

github.com/agentm/project-m36

Discussions: discu.eu/q/https://github.com/

José A. Alonso's avatar
José A. Alonso

@[email protected]

: Reiteración de suma de consecutivos. jaalonso.github.io/exercitium/

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared December 19, 2024. jaalonso.github.io/vestigium/p

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Indexing code at scale with Glean

engineering.fb.com/2024/12/19/

Discussions: discu.eu/q/https://engineering

Shae Erisson's avatar
Shae Erisson

@[email protected]

Is there an active content management system written in ?

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Remote Haskell position (but must be in EU/EES) at Scrive

careers.scrive.com/jobs/536542

Discussions: discu.eu/q/https://careers.scr

Björn Gohla's avatar
Björn Gohla

@[email protected]

My work is recruiting a developer. Some experience is apparently required.

Full remote in or is possible.

It's a great place to work, by the way.

careers.scrive.com/jobs/536542

(We are also hiring for other tech roles, including an developer.)

José A. Alonso's avatar
José A. Alonso

@[email protected]

Linear calculi: A comparison approach. ~ Ana Jorge Carvalho de Soares Almeida. repositorio-aberto.up.pt/bitst

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Lift instance cause Cabal build error: unknown symbol with CFFI but Cabal repl works fine.

github.com/yourcomrade/FloPoCo

Discussions: discu.eu/q/https://github.com/

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Introducing bevy-remote-hs: a Haskell library for interfacing with the Bevy game engine

github.com/matthunz/bevy-remot

Discussions: discu.eu/q/https://github.com/

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

An imperative programmer tries to learn Haskell

hatwd.com/p/an-imperative-prog

Discussions: discu.eu/q/https://hatwd.com/p

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Announcing Decision Drill

entropicthoughts.com/announcin

Discussions: discu.eu/q/https://entropictho

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Effectful - Build Fast & Reliable Haskell Applications

haskell-effectful.github.io/

Discussions: discu.eu/q/https://haskell-eff

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

The Effectful effect system has a website: haskell-effectful.github.io

discourse.haskell.org/t/the-ef

Discussions: discu.eu/q/https://discourse.h

vascorsd's avatar
vascorsd

@[email protected]

Glasgow Compiler 9.12.1 Release notes | Lobsters
lobste.rs/s/pyjhml/glasgow_has

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Proposal: improve the time performance of `Data.List.unsnoc`

github.com/haskell/core-librar

Discussions: discu.eu/q/https://github.com/

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared December 16, 2024. jaalonso.github.io/vestigium/p #

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

GHC 9.12.1 is now available - Announcements

discourse.haskell.org/t/ghc-9-

Discussions: discu.eu/q/https://discourse.h

José A. Alonso's avatar
José A. Alonso

@[email protected]

Bottom-up computation using trees of sublists. ~ Shin-Cheng Mu. cambridge.org/core/journals/jo

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Contributing an mdoc reader to Pandoc

duckrabbit.tech/articles/mdoc.

Discussions: discu.eu/q/https://duckrabbit.

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Glasgow Haskell Compiler 9.12.1 Release notes

downloads.haskell.org/ghc/9.12

Discussions: discu.eu/q/https://downloads.h

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Haskell recap for week 50/2024

discu.eu/weekly/haskell/2024/5

Get RSS feeds and support this bot with the premium plan: discu.eu/premium

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared December 15, 2024. jaalonso.github.io/vestigium/p

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Proposal: add `withForeignPtrST` and `touchForeignPtrST`

github.com/haskell/core-librar

Discussions: discu.eu/q/https://github.com/

José A. Alonso's avatar
José A. Alonso

@[email protected]

Category theory using Haskell (An introduction with Moggi and Yoneda). ~ Shuichi Yukita. link.springer.com/book/10.1007

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Repost: 2-3 Weeks Haskell Onboarding From Zero (Google, FPComplete)

news.ycombinator.com/item?id=2

Discussions: discu.eu/q/https://news.ycombi

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Google Summer of Code 2024 Wrap-up

blog.haskell.org/gsoc-2024/

Discussions: discu.eu/q/https://blog.haskel

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Я ☞ Hello, World!

youtube.com/watch?list=PLzkSCN

Discussions: discu.eu/q/https://www.youtube

Philipp :emacs: :nixos:'s avatar
Philipp :emacs: :nixos:

@[email protected]

in day 13, supplemental: realized that I don't need a decimal library, just Data.Ratio(Rational). Nice.

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Proposal: add enumerate :: (Enum a, Bounded a) => [a]

github.com/haskell/core-librar

Discussions: discu.eu/q/https://github.com/

Andres Löh's avatar
Andres Löh

@[email protected]

I wonder if today's (14) task was specifically designed to be difficult for AI to solve due to vague specification, or if that's actually a problem that AI is particularly good at.

I was first slightly annoyed at having to guess, but then I got it with my first solution attempt (in ), so I'm happy enough.

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

[Well-Typed] GHC activities report: September-November 2024

well-typed.com/blog/2024/12/gh

Discussions: discu.eu/q/https://www.well-ty

Philipp :emacs: :nixos:'s avatar
Philipp :emacs: :nixos:

@[email protected]

in , day 13. First part was pretty easy. Second part would have been easy if sbv wasn't broken in . I didn't want to just increase the precision.

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared December 11, 2024. jaalonso.github.io/vestigium/p

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Solving a ResourceT-related space leak in production

exploring-better-ways.bellroy.

Discussions: discu.eu/q/https://exploring-b

J3RN :fedora: :elixir: :emacs:'s avatar
J3RN :fedora: :elixir: :emacs:

@[email protected]

question: Is there a function for "reapply this function to a starting value N times"? e.g. `doTimes (*2) 3 1` would return `8` ((*2) $ (*2) $ (*2) $ 1). I know I could chain take and iterate and then do a Data.List.last, but that has crumby performance for very large values of N.

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Internship opportunity with NASA programming in Rust

stemgateway.nasa.gov/s/course-

Discussions: discu.eu/q/https://stemgateway

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Haskell Interlude 59: Harry Goldstein

haskell.foundation/podcast/59/

Discussions: discu.eu/q/https://haskell.fou

Aly-Bocar's avatar
Aly-Bocar

@[email protected]

people
I hope you're doing fine !

I got this every time I compile, I'm tired of it. Any idea why ?

José A. Alonso's avatar
José A. Alonso

@[email protected]

When is a call stack not a call stack? ~ Chris Smith. cdsmithus.medium.com/when-is-a

José A. Alonso's avatar
José A. Alonso

@[email protected]

Readings shared December 10, 2024. jaalonso.github.io/vestigium/p

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

When is a call stack not a call stack?

cdsmithus.medium.com/when-is-a

Discussions: discu.eu/q/https://cdsmithus.m

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Parser Combinators Beat Regexes

entropicthoughts.com/parser-co

Discussions: discu.eu/q/https://entropictho

Philipp :emacs: :nixos:'s avatar
Philipp :emacs: :nixos:

@[email protected]

in , day 10 was a breeze and also quite fun. Still didn't use comonads because of time constraints. 😐

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

The Haskell Programmer's Guide to the IO Monad

stefan-klinger.de/files/monadG

Discussions: discu.eu/q/https://stefan-klin

Björn Gohla's avatar
Björn Gohla

@[email protected]

Anyone looking for a Job, or remote in EU/EEA?

~I will update this post when I have more details.~

Here is the job posting: careers.scrive.com/jobs/536542

We are also looking for an engineer.

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

3D Printed Programming Language Logo Tree Ornaments: Designed in Haskell

github.com/joe-warren/christma

Discussions: discu.eu/q/https://github.com/

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Haskell: A Great Procedural Language

entropicthoughts.com/haskell-p

Discussions: discu.eu/q/https://entropictho

洪 民憙 (Hong Minhee)'s avatar
洪 民憙 (Hong Minhee)

@[email protected] · Reply to 洪 民憙 (Hong Minhee)'s post

It supports , .js, , , , , , and out of box. Excellent! I with it would support as well though.

mise.jdx.dev/core-tools.html

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Hydra, a code counting program written in Haskell.

github.com/haq0/hydra

Discussions: discu.eu/q/https://github.com/

Lionhairdino's avatar
Lionhairdino

@[email protected]

순수 함수로 상태 모델링을 어찌하는가를 정리한 글입니다. 혼자 상상이니, 정식 텍스트 같은 내용을 기대하진 마세요.
lionhairdino.github.io/posts/2

Jons Mostovojs's avatar
Jons Mostovojs

@[email protected]

Just as I had to got rid of tag (in favour of ), sadly, I feel like it's time to get rid of tag in my bio.

I'm doing a rewrite of backend now and while I'm not ruminating too much over the time and money spent on backend, I find it so much cheaper and faster to write in well-typed languages.

I really hope to become profitable so that I can have a look at + + combo, but I think I'm years away from such a luxury.

Anupam 《ミ》λ≡'s avatar
Anupam 《ミ》λ≡

@[email protected]

I have a machine with 32GB RAM and barely use 8GB of it. I run with hundreds of tabs, open , , and projects all at the same time. Have and apps running, and the memory usage still hovers around 8GB.Seems like I should be using Docker and Kubernetes just to feel like I'm using my machine to its potential 😆

Boyd Stephen Smith Jr.'s avatar
Boyd Stephen Smith Jr.

@[email protected]

Would it be insane to create a git repository that has , , AND packages in it?

My main concern is that some of the package distribution tooling I've dealt with seems to assume/prefer the package is at the top-level of the git repo.

Should I be using *submodules*!? (Plz, no!)

I think it's going to be informative to keep the packages coherent, and one repo seems like it could be a way to do that.

kakkun61's avatar
kakkun61

@[email protected]

間に合うのかねえ

justsoup's avatar
justsoup

@[email protected]

Since I am the newest Trusted Contributor with I thought I would give a little introductory post. :blob_derpy:

Heyo! My name is Aster (they/them) and I do stuff with ! I am hard at work getting immutability up and running on pmOS with the help of the amazing work being done to port .

You may know me for my work on on pmOS, my favorite desktop environment!

I also dabble in and a bit of .

Excited to work with all of y'all!

Jesper Agdakx's avatar
Jesper Agdakx

@[email protected]

For Haskell packages published on Hackage, do you prefer version bounds on dependencies to be narrower or wider?

narrow ~ “We have tested that the package builds with dependencies that fall in this range”

wide ~ “Things are very likely to break if you use a version outside of this range, but we haven’t necessarily tested every version in it”

Case in point, I’m considering for agda2hs whether to bump the bound on base to only include the versions we actually test on CI, or to also include older versions that might still work but aren’t currently tested.

#Haskell #hackage #packages #agda

Anupam 《ミ》λ≡'s avatar
Anupam 《ミ》λ≡

@[email protected]

There is a fundamental difference between for the sake of convenience (I can build an entire app quickly. Think framework of the day), vs complexity for the sake of robustness (I can make changes to the app quickly without introducing new bugs. Think or ).

When you are not familiar with the tech, both can look the same, but they are not. The latter is actually in disguise

Philipp :emacs: :nixos:'s avatar
Philipp :emacs: :nixos:

@[email protected]

In , is there a way to have doctests that just compile and not run? I have some IO code that I cannot execute in an isolated fashion.

MrBerard 😎👉👉's avatar
MrBerard 😎👉👉

@[email protected]

Mastodon's global search only works on hashed tags, not text, so:




Teacher













RanaldClouston's avatar
RanaldClouston

@[email protected]

I've been on Mastodon for a year, so it's time for a new pinned post with an updated dog pic! I'm a lecturer in at Australian National University in , / country. I research , , and a little , and teach an intro to programming class in . Sometimes I post about work; when I'm busy at work I'm more likely to post about , my , and other pleasant distractions

A black shaggy labradoodle in a red harness stands on some grass, looking with open mouth at the camera
A black shaggy labradoodle in a red harness stands on some grass, looking with open mouth at the camera
Timothy Wolodzko's avatar
Timothy Wolodzko

@[email protected]

- what if everything was a pointer
- what if everything was a linked list
- what if everything was a pure function
- what if everything was a stack
- what if everything was a hash map
- what if everything was immutable
- what if everything was a pattern to match
- what if everything was a class
- what if everything was a memory allocation problem
- what if everything != nil
- what if everything was everything

Abhinav 🌏's avatar
Abhinav 🌏

@[email protected]

JSON is probably the most used standard file format for storing and transmitting data on the Internet in recent times. It has a simple syntax with only four scalar data types and two composite data types. So, writing a parser for is a great exercise for learning the basics of parsing.

That's exactly what I did: I wrote a JSON parser from scratch in . Read my post to learn about basics of , nuances of the JSON syntax, and parser combinators and property-based testing in Haskell: abhinavsarkar.net/posts/json-p

A transition diagram depicting the JSON syntax.
A transition diagram depicting the JSON syntax.
Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Why is Prettier rock solid? Haskell!

mrmr.io/til/prettier

Discussions: discu.eu/q/https://mrmr.io/til

Joe's avatar
Joe

@[email protected]

If anyone's interested in the combination of & / I've been working on a library for declarative solid modeling

hackage.haskell.org/package/wa
github.com/joe-warren/opencasc

A solid of revolution, specifically a Pawn chess piece, rendered in grey on a blue background
A solid of revolution, specifically a Pawn chess piece, rendered in grey on a blue background
An involute gear, relatively thin, 20 teeth, rendered in grey on a blue background
An involute gear, relatively thin, 20 teeth, rendered in grey on a blue background
result of sweeping a kind of "rounded star" shape along a curved line, looks kind of like a line of toothpaste, rendered in grey on a blue background,
result of sweeping a kind of "rounded star" shape along a curved line, looks kind of like a line of toothpaste, rendered in grey on a blue background,
A rounded cube, with cylinders cut into it (an example of constructive solid geometry), rendered in grey on a blue background
A rounded cube, with cylinders cut into it (an example of constructive solid geometry), rendered in grey on a blue background
HoldMyType's avatar
HoldMyType

@[email protected]

I am not fully convinced here , maybe lazy eval is a cult

In a lazy evaluation scheme, the evaluation of an expression is deferred until the
value of the expression is actually needed elsewhere in the computation. That
is, the expression is evaluated on demand. This contrasts with what is called
eager evaluation in which an expression is evaluated as soon as its inputs are
available.
For example, if eager evaluation is used, an argument (which may be an arbi-
trary expression) of a function call is evaluated before the body of the function.
If lazy evaluation is used, the argument is not evaluated until the value is actu-
ally needed during the evaluation of the function body. If an argument’s value
is never needed, then the argument is expression is never evaluated.
Why should we care? Well, this facility allows programmers to construct and
use data structures that are conceptually unbounded or infinite in size. As
long as a program never actually needs to inspect the entire structure, then a
terminating computation is still possible.
For example, we might define the list of natural numbers as a list beginning
with 0, followed by the list formed by adding one to each element of the list of
natural numbers.
Lazy evaluation thus allows programmers to separate the data from the control.
They can define a data structure without having to worry about how it is
processed and they can define functions that manipulate the data structure
without having to worry about its size or how it is created. This ability to
separate the data from the control of processing enables programs to be highly
modular

john.cs.olemiss.edu/~hcc/csci4

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Anti-Instances in Haskell

heneli.dev/blog/anti-instances

Discussions: discu.eu/q/https://www.heneli.

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Difference between type variables, unification variables and skolems

cohost.org/prophet/post/222073

Discussions: discu.eu/q/https://cohost.org/

Abhinav 🌏's avatar
Abhinav 🌏

@[email protected]

I wrote the fourth part of my series “Implementing Co, a small programming language with coroutines”. And this time, we add support for channels in Co for inter-coroutine communication. abhinavsarkar.net/posts/implem

José A. Alonso's avatar
José A. Alonso

@[email protected]

falsify: Hypothesis-inspired shrinking for Haskell. ~ Edsko de Vries. well-typed.com/blog/2023/04/fa

HoldMyType's avatar
HoldMyType

@[email protected]

A category with a terminal object, products and exponentials
is called a Cartesian Closed Category (CCC). N
For example, Set is a CCC. Another class of examples are Boolean algebras,
seen as categories:
• Products are given by conjunctions A ∧ B. We define exponentials as im-
plications:
A ⇒ B := ¬A ∨ B .
• Evaluation is just Modus Ponens,
(A ⇒ B) ∧ A ≤ B
while couniversality is the Deduction Theorem,
C ∧ A ≤ B ⇐⇒ C ≤ A ⇒ B

HoldMyType's avatar
HoldMyType

@[email protected]

defenseless thesis on 🧅s

Abstract:
later
Author :
Me
Assumption :
1. there are no onions , such that number of layers of an onion are 0 .
Law : You have no way to record all you knife ops .
2. Given theory T , for \[x \in T \], x need not be either true or false
if onions here are a functor they are also free monad
\[Op\]- now you peel of a layer from one
\[Op^{-1}\]you can wrap it back too
when you do that , you have a monoid.
How do you write a computable abstract syntax tree (AS A monad computation) for these ops
REFERENCES - LATER
To be contd

HoldMyType's avatar
HoldMyType

@[email protected]

So one way to define is to write recursive function that defines its inputs in terms of the outputs, which the function gives using initial inputs and so on.
So domain corresponds to rand and vice versa and this describes continuity of the function?
Can we define the continuity in like this
Why types should I use if i write it in
Aha others are thinking about it too
Albeit, i don't think I can treat arrows like applicatives in my approach
Quote
fetching gives you a source promise and you want an image promise
writing pipelines using arrow notation is difficult because we have to program in a point-free style (without variables).
ci- is cool
codeberg.org/Codeberg-CI/reque
roscidus.com/blog/blog/2019/11
via @talex5

lispwitch's avatar
lispwitch

@[email protected]

kradvortoj

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Is Meta decommissioning Sigma?

engineering.fb.com/2015/06/26/

Discussions: discu.eu/q/https://engineering

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Overloading the lambda abstraction in Haskell

acatalepsie.fr/posts/overloadi

Discussions: discu.eu/q/https://acatalepsie

Haskell Weekly's avatar
Haskell Weekly

@[email protected]

Haskell, Ada, C++, Awk: An Experiment in Prototyping Productivity (1994) [pdf]

cs.yale.edu/publications/techr

Discussions: discu.eu/q/https://www.cs.yale

das-g's avatar
das-g

@[email protected]

Hallo Fediversum!

Obwohl ich bereits einen Account auf @[email protected] hatte, bin ich . 👋

: Als an einer 🎓Fachhochschule 👨‍🏫betreue ich Übungen & 👩‍🔧Praktika, 👨‍💻entwickle und 👨‍🔬betreibe angewandte "". In meiner Freizeit trage ich zu 🗺️ bei und lerne & spreche 💚. Ich interessiere mich für & |n wie und für das :jugend_hackt: Beibringen des |s.

das-g's avatar
das-g

@[email protected]

Saluton Fediverso!

Kvankam mi antaŭe havis konton ĉe @[email protected], mi estas 👋.

: Mi laboras kiel 👨‍🏫 & 👨‍💻 /👨‍🔬"" ĉe 🎓fakaltlernejo. Libertempe mi kontribuas al 🗺️ kaj (evidente) mi estas 💚. Mi interesiĝas interalie pri kiel kaj pri :jugend_hackt: de .

Christopher League's avatar
Christopher League

@[email protected]

Reactivating — Hello! I’m into:
• Functional programming, especially , , ,
• Proof systems & software correctness tools , , ,
• Scientific data acquisition & analysis, frameworks
• Reproducible builds, ,
• Non-traditional families (, interracial)
strategies & other perspectives
• Black natural hair care, for Ms. 7yo
& electronic music, dabbling at piano as a busy adult