Logs: liberachat/#haskell
| 2026-02-23 10:34:45 | × | haskell-noob quits (~haskell-n@50.35.80.129) (Quit: Client closed) |
| 2026-02-23 10:34:50 | <newmind> | (also might already be on the chinese list of "topics we pretend don't exist") |
| 2026-02-23 10:38:14 | × | marinelli quits (~weechat@gateway/tor-sasl/marinelli) (Quit: marinelli) |
| 2026-02-23 10:40:38 | → | marinelli joins (~weechat@gateway/tor-sasl/marinelli) |
| 2026-02-23 10:42:32 | → | Pozyomka joins (~pyon@user/pyon) |
| 2026-02-23 10:45:55 | × | mange quits (~mange@user/mange) (Quit: Zzz...) |
| 2026-02-23 10:47:46 | × | erty quits (~user@user/aeroplane) (Read error: Connection reset by peer) |
| 2026-02-23 10:49:22 | → | lxsameer joins (~lxsameer@Serene/lxsameer) |
| 2026-02-23 10:50:09 | → | califax_ joins (~califax@user/califx) |
| 2026-02-23 10:50:22 | × | califax quits (~califax@user/califx) (Ping timeout: 252 seconds) |
| 2026-02-23 10:51:06 | × | ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 252 seconds) |
| 2026-02-23 10:51:07 | × | ec quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 252 seconds) |
| 2026-02-23 10:51:25 | califax_ | is now known as califax |
| 2026-02-23 10:53:10 | → | ChaiTRex joins (~ChaiTRex@user/chaitrex) |
| 2026-02-23 10:53:24 | → | ec joins (~ec@gateway/tor-sasl/ec) |
| 2026-02-23 10:58:03 | → | erty joins (~user@user/aeroplane) |
| 2026-02-23 10:59:00 | → | kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be) |
| 2026-02-23 10:59:12 | × | Leary quits (~Leary@user/Leary/x-0910699) (Remote host closed the connection) |
| 2026-02-23 10:59:26 | × | flukiluke quits (~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962) (Server closed connection) |
| 2026-02-23 10:59:46 | <kuribas> | What's an easy way to run a haskell script for devs that don't have a haskell environment? |
| 2026-02-23 10:59:46 | → | flukiluke joins (~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962) |
| 2026-02-23 10:59:53 | <kuribas> | Create a docker application? |
| 2026-02-23 11:01:39 | <kuribas> | Or a static binary? |
| 2026-02-23 11:03:20 | <haskellbridge> | <ijouw> By script you mean a '#!/usr/bin/ghc' file or a simple cabal project? |
| 2026-02-23 11:03:51 | <kuribas> | A cabal project, depending on other libraries. |
| 2026-02-23 11:04:02 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 268 seconds) |
| 2026-02-23 11:04:33 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 2026-02-23 11:05:16 | <haskellbridge> | <ijouw> Never used docker with haskell before; it would need to install the compiler all the same. |
| 2026-02-23 11:05:28 | <__monty__> | Depends what you mean by easy, Stack or Nix shebangs are an option. That would be easy for you mostly. |
| 2026-02-23 11:05:53 | <kuribas> | Easy for the other devs. Maybe a dev container? |
| 2026-02-23 11:06:02 | <kuribas> | Something that automatically installs all the dependencies. |
| 2026-02-23 11:06:12 | <haskellbridge> | <ijouw> stack? |
| 2026-02-23 11:07:26 | <__monty__> | A distro-specific package is the only thing I can come up with that ticks the easiest for them box but then it depends on how many distros you'd want to target. |
| 2026-02-23 11:07:51 | <__monty__> | If you give me a docker for example, now I need to install and then figure out how to use podman. |
| 2026-02-23 11:09:03 | <kuribas> | But docker is more common that ghc (cabal/stack/ghcup) installation. |
| 2026-02-23 11:09:06 | <tomsmeding> | kuribas: you might look at https://cs-syd.eu/posts/2024-04-20-static-linking-haskell-nix or https://hasufell.github.io/posts/2024-04-21-static-linking.html |
| 2026-02-23 11:09:29 | <tomsmeding> | I've tried the alpine approach once and it didn't work for me, but then perhaps I didn't try enough / failed somehow |
| 2026-02-23 11:09:58 | <tomsmeding> | ah I may have tried something other than docker back then |
| 2026-02-23 11:10:46 | × | SoF quits (~skius@user/skius) (Server closed connection) |
| 2026-02-23 11:11:20 | → | SoF joins (~skius@user/skius) |
| 2026-02-23 11:11:24 | <__monty__> | I'd personally prefer a flatpak to a docker container, especially for a tool rather than a service. |
| 2026-02-23 11:11:27 | → | Leary joins (~Leary@user/Leary/x-0910699) |
| 2026-02-23 11:11:52 | <kuribas> | Maybe I could try a dev container, where he can build and maybe develop on the app. |
| 2026-02-23 11:11:52 | <comerijn> | kuribas: I'd say static binary |
| 2026-02-23 11:12:14 | <kuribas> | comerijn: Doesn't that come with libc problems on linux? |
| 2026-02-23 11:12:33 | <comerijn> | kuribas: Depends which libc you use |
| 2026-02-23 11:12:59 | <comerijn> | The problem with libc is GNU libc intentionally breaking static linking |
| 2026-02-23 11:13:07 | <comerijn> | There are other libc's that work just fine |
| 2026-02-23 11:13:25 | <__monty__> | An archive with a dynamic executable and all the necessary libraries is another option. |
| 2026-02-23 11:13:27 | <comerijn> | See musl, which is used by Alpine |
| 2026-02-23 11:14:03 | <comerijn> | kuribas: Is this for other dev's in general or just for, for example, people within your organisation? |
| 2026-02-23 11:14:26 | <kuribas> | No, just my organisation. |
| 2026-02-23 11:14:49 | <kuribas> | If there is more interest, I'll probably need to port it to python or so... |
| 2026-02-23 11:15:00 | × | fp quits (~Thunderbi@130.233.70.214) (Ping timeout: 256 seconds) |
| 2026-02-23 11:16:11 | → | koz_ joins (~koz@121.99.240.58) |
| 2026-02-23 11:18:31 | × | koz quits (~koz@121.99.240.58) (Ping timeout: 255 seconds) |
| 2026-02-23 11:18:40 | → | terrorjack joins (~terrorjac@2a01:4f8:271:2d98::2) |
| 2026-02-23 11:19:26 | × | [_________] quits (~oos95GWG@user/oos95GWG) (Server closed connection) |
| 2026-02-23 11:19:37 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 248 seconds) |
| 2026-02-23 11:19:44 | → | [_________] joins (~oos95GWG@user/oos95GWG) |
| 2026-02-23 11:20:06 | × | edwtjo quits (~edwtjo@fsf/member/edwtjo) (Server closed connection) |
| 2026-02-23 11:20:29 | → | edwtjo joins (~edwtjo@h-155-4-52-89.A213.priv.bahnhof.se) |
| 2026-02-23 11:20:29 | × | edwtjo quits (~edwtjo@h-155-4-52-89.A213.priv.bahnhof.se) (Changing host) |
| 2026-02-23 11:20:29 | → | edwtjo joins (~edwtjo@fsf/member/edwtjo) |
| 2026-02-23 11:20:38 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 2026-02-23 11:22:20 | → | Milan_Vanca joins (~milan@user/Milan-Vanca:32634) |
| 2026-02-23 11:29:01 | → | fp joins (~Thunderbi@130.233.70.214) |
| 2026-02-23 11:30:07 | <Milan_Vanca> | Hi guyz! How to solve "duplicate instance declarations"? Data.ByteString.Lazy.Char8 defines IsString ByteString instance. Which I don't like as it truncates. I want proper utf8 implementation so I implemented another instance like fromString = TextLazyEncoding.encodeUtf8 . TextLazy.pack My intent is to start using OverloadedStrings byt with my instance. |
| 2026-02-23 11:33:23 | <Leary> | Milan_Vanca: Instances must be unique. Unless the other instance is an orphan you can avoid importing, all you can do is give your instance to a newtype over `ByteString`. |
| 2026-02-23 11:33:41 | ← | L29Ah parts (~L29Ah@wikipedia/L29Ah) () |
| 2026-02-23 11:41:57 | × | cawfee quits (root@2401:c080:3800:3460::babe) (Server closed connection) |
| 2026-02-23 11:42:06 | × | energizer quits (~energizer@user/energizer) (Server closed connection) |
| 2026-02-23 11:42:16 | → | cawfee joins (root@2401:c080:3800:3460::babe) |
| 2026-02-23 11:42:47 | → | energizer joins (~energizer@user/energizer) |
| 2026-02-23 11:43:34 | <Milan_Vanca> | 9u |
| 2026-02-23 11:44:32 | <Milan_Vanca> | I will try to not import whole module but only needed parts, then as Instances are not imported it might work I guess? |
| 2026-02-23 11:44:35 | <Milan_Vanca> | Ty Leary |
| 2026-02-23 11:46:06 | × | jonrh quits (sid5185@id-5185.ilkley.irccloud.com) (Server closed connection) |
| 2026-02-23 11:46:17 | → | jonrh joins (sid5185@id-5185.ilkley.irccloud.com) |
| 2026-02-23 11:47:26 | × | xnyhps quits (~xnyhps@s.xnyhps.nl) (Server closed connection) |
| 2026-02-23 11:47:40 | → | xnyhps joins (~xnyhps@s.xnyhps.nl) |
| 2026-02-23 11:47:54 | <Leary> | No, instances have this funny property that they're automatically imported and re-exported by every module they touch. If the instance isn't an orphan you're cooked. |
| 2026-02-23 11:49:35 | <newmind> | which kind of makes sense, the instances should be mostly canonical, with only one real implementation that's part of the type (or class), not something you get to choose |
| 2026-02-23 11:49:55 | <Milan_Vanca> | Ok make sense.. I am going to check if that instance is an orphan. |
| 2026-02-23 11:50:56 | <Milan_Vanca> | Well but I would argue that ByteString has incorrect implementation. |
| 2026-02-23 11:52:46 | × | aku quits (aku@65.108.245.241) (Server closed connection) |
| 2026-02-23 11:52:54 | → | aku joins (aku@65.108.245.241) |
| 2026-02-23 11:53:23 | <int-e> | Milan_Vanca: maybe you'd be happier with https://hackage.haskell.org/package/utf8-string-1.0.2/docs/Data-ByteString-UTF8.html then |
| 2026-02-23 11:54:35 | <int-e> | Oh I guess not, since it's *not* a newtype wrapper. |
| 2026-02-23 11:54:38 | <int-e> | Sorry. |
| 2026-02-23 11:55:32 | <int-e> | The package does provide the right `fromString` at least. But the IsString instance doesn't use it. That is kind of sad. |
| 2026-02-23 12:01:49 | × | fun-safe-math quits (~fun-safe-@97.115.234.213) () |
| 2026-02-23 12:03:52 | → | fun-safe-math joins (~fun-safe-@97.115.234.213) |
| 2026-02-23 12:06:03 | × | dyniec quits (~dyniec@dybiec.info) (Remote host closed the connection) |
| 2026-02-23 12:07:50 | <Milan_Vanca> | Hmmm... looks like newtype is only option. |
| 2026-02-23 12:08:04 | <Square2> | It can't be coincidence this course got number it got https://web.cs.dal.ca/~nzeh/Teaching/3137/haskell/ |
| 2026-02-23 12:08:19 | <Square2> | missing one 3, but good enough |
| 2026-02-23 12:11:17 | × | lieven quits (~mal@ns2.wyrd.be) (Server closed connection) |
| 2026-02-23 12:11:37 | → | mal1 joins (~mal@ns2.wyrd.be) |
| 2026-02-23 12:12:06 | × | shawwwn quits (uid6132@id-6132.helmsley.irccloud.com) (Server closed connection) |
All times are in UTC.