Logs: liberachat/#haskell
| 2021-07-09 15:09:06 | × | chris-the-slurpa quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2021-07-09 15:09:47 | → | chris-the-slurpa joins (~chris@81.96.113.213) |
| 2021-07-09 15:11:39 | → | chris-th_ joins (~chris@81.96.113.213) |
| 2021-07-09 15:11:39 | × | chris-the-slurpa quits (~chris@81.96.113.213) (Read error: Connection reset by peer) |
| 2021-07-09 15:13:15 | <qrpnxz> | interesting, i will check it out today |
| 2021-07-09 15:13:15 | → | lbseale joins (~lbseale@user/ep1ctetus) |
| 2021-07-09 15:14:54 | × | tomku quits (~tomku@user/tomku) (Ping timeout: 252 seconds) |
| 2021-07-09 15:15:01 | → | tomku joins (~tomku@user/tomku) |
| 2021-07-09 15:17:20 | <safinaskar> | thanks! :) |
| 2021-07-09 15:19:15 | → | leeb joins (~leeb@KD111239157039.au-net.ne.jp) |
| 2021-07-09 15:20:48 | <azeem> | tomsmeding: You can get a lot of examples by consider matrices with coefficients in some ring and I think even a semiring. You can consider the ring of Integers modulo n and even of polynomials in some number of variables. |
| 2021-07-09 15:21:20 | <azeem> | They will be non-commutative but associative. |
| 2021-07-09 15:26:05 | × | Martinsos quits (~Martinsos@cpe-188-129-56-84.dynamic.amis.hr) (Remote host closed the connection) |
| 2021-07-09 15:26:22 | → | Martinsos joins (~Martinsos@cpe-188-129-56-84.dynamic.amis.hr) |
| 2021-07-09 15:28:32 | × | Martinsos quits (~Martinsos@cpe-188-129-56-84.dynamic.amis.hr) (Remote host closed the connection) |
| 2021-07-09 15:28:49 | → | Martinsos joins (~Martinsos@cpe-188-129-56-84.dynamic.amis.hr) |
| 2021-07-09 15:30:13 | × | Morrow quits (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net) (Quit: Leaving) |
| 2021-07-09 15:31:31 | × | MorrowM quits (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Quit: ZNC 1.8.2 - https://znc.in) |
| 2021-07-09 15:31:54 | → | Morrow joins (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
| 2021-07-09 15:35:10 | × | lbseale quits (~lbseale@user/ep1ctetus) (Read error: Connection reset by peer) |
| 2021-07-09 15:37:00 | → | wallymathieu joins (~wallymath@81-234-151-21-no94.tbcn.telia.com) |
| 2021-07-09 15:38:04 | × | yauhsien quits (~yauhsien@61-231-39-135.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 2021-07-09 15:38:54 | × | Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt) |
| 2021-07-09 15:42:38 | × | ubert quits (~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233) (Ping timeout: 255 seconds) |
| 2021-07-09 15:43:46 | × | cheater quits (~Username@user/cheater) (Ping timeout: 246 seconds) |
| 2021-07-09 15:44:27 | → | cheater joins (~Username@user/cheater) |
| 2021-07-09 15:46:36 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:44e3:e9f0:ea4d:f039) |
| 2021-07-09 15:47:21 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 252 seconds) |
| 2021-07-09 15:48:23 | × | sqrt2 quits (~ben@80-108-18-7.cable.dynamic.surfer.at) (Quit: ZNC - http://znc.in) |
| 2021-07-09 15:48:42 | → | favonia joins (~favonia@user/favonia) |
| 2021-07-09 15:50:30 | → | MQ-17J joins (~MQ-17J@8.21.10.15) |
| 2021-07-09 15:51:32 | <Martinsos> | I published my very first package on Hackage -> strongly typed paths, similar like 'path' which was big inspiration but I try to take it one level further: https://hackage.haskell.org/package/strong-path . Any comments on code / API are very welcome, as I still consider myself to be intermediate in Haskell! |
| 2021-07-09 15:51:41 | → | sqrt2 joins (~ben@tunnel330957-pt.tunnel.tserv6.fra1.ipv6.he.net) |
| 2021-07-09 15:52:14 | <maerwald> | Martinsos: I posted my comment on reddig already :p |
| 2021-07-09 15:52:17 | <maerwald> | |
| 2021-07-09 15:52:50 | <Martinsos> | maerwald ah that is you thanks for that :D! I thought it might be worth putting it here also, I don't know how much people from IRC are also on reddit |
| 2021-07-09 15:53:10 | <maerwald> | Also, if you're using FilePath under the hood, then that would be my other critique |
| 2021-07-09 15:53:17 | <jle`> | nice Martinsos ! |
| 2021-07-09 15:53:26 | × | lortabac quits (~lortabac@95.138.56.124) (Quit: WeeChat 2.8) |
| 2021-07-09 15:54:06 | × | egoist quits (~egoist@186.235.80.249) (Quit: WeeChat 3.2) |
| 2021-07-09 15:54:31 | → | Kofid joins (~Kofid@2601:404:d300:5a0:fcbf:c290:5998:a5c6) |
| 2021-07-09 15:55:43 | <Martinsos> | I am using Path under the hood actually, which uses FilePath :). Makes sense, but we can change that implementation in the future with no / little effect on the API I believe. |
| 2021-07-09 15:55:57 | <maerwald> | if I ever get AFPP done, yeah |
| 2021-07-09 15:56:22 | <maerwald> | Martinsos: https://github.com/hasufell/abstract-filepath |
| 2021-07-09 15:56:27 | <Martinsos> | Just read about AFPP, that would be cool! |
| 2021-07-09 15:57:11 | <maerwald> | I have green light from the CLC to attempt a user space implementation and start writing patches for e.g. filpath/unix/Win32, but it's gonna be a lot of wor |
| 2021-07-09 15:57:26 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 246 seconds) |
| 2021-07-09 15:58:19 | → | neurocyte4048 joins (~neurocyte@46.243.81.30) |
| 2021-07-09 15:58:19 | × | neurocyte4048 quits (~neurocyte@46.243.81.30) (Changing host) |
| 2021-07-09 15:58:19 | → | neurocyte4048 joins (~neurocyte@user/neurocyte) |
| 2021-07-09 15:58:30 | × | neurocyte404 quits (~neurocyte@user/neurocyte) (Read error: Connection reset by peer) |
| 2021-07-09 15:58:30 | neurocyte4048 | is now known as neurocyte404 |
| 2021-07-09 15:58:51 | → | favonia joins (~favonia@user/favonia) |
| 2021-07-09 15:59:47 | <Martinsos> | It does look like a lot of work. I never got much into the lower-level details regarding the representation of path, normalization and similar, I leveraged Path for that, but I do hope to get some more time in the future to investigate that and to follow projects like AFPP |
| 2021-07-09 16:00:30 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-07-09 16:02:01 | <Martinsos> | Maybe stupid question but I see that you have AbstractFilePath and WindowsFilePath exported from the top module, however there is no PosixFilePath -> how is that? You do have PosixString though hm |
| 2021-07-09 16:03:24 | → | lbseale joins (~lbseale@user/ep1ctetus) |
| 2021-07-09 16:05:13 | <maerwald> | those are the same |
| 2021-07-09 16:05:18 | <maerwald> | https://github.com/hasufell/abstract-filepath/blob/master/lib/AbstractFilePath/Internal/Types.hs#L37 |
| 2021-07-09 16:05:37 | <maerwald> | the String vs FilePath was a major question that made me stop working |
| 2021-07-09 16:05:56 | <maerwald> | rust also makes that distinction |
| 2021-07-09 16:06:05 | <maerwald> | although those are the same representation afair |
| 2021-07-09 16:07:42 | → | rednaZ[m] joins (~r3dnazmat@2001:470:69fc:105::ba70) |
| 2021-07-09 16:08:53 | <maerwald> | Martinsos: https://paste.tomsmeding.com/1nCW1bVt |
| 2021-07-09 16:09:00 | → | yauhsien joins (~yauhsien@61-231-39-135.dynamic-ip.hinet.net) |
| 2021-07-09 16:09:29 | <albet70> | does typeclass could be a type of another typeclass? |
| 2021-07-09 16:09:38 | <albet70> | I don't know how to describe |
| 2021-07-09 16:10:02 | <albet70> | typeclass has types, could typeclass has typeclass? |
| 2021-07-09 16:10:59 | × | acidjnk_new quits (~acidjnk@p200300d0c72b9550509afe7c5cdd8ef5.dip0.t-ipconnect.de) (Ping timeout: 255 seconds) |
| 2021-07-09 16:10:59 | × | nschoe quits (~quassel@2a01:e0a:8e:a190:156a:d066:25bb:13b1) (Ping timeout: 255 seconds) |
| 2021-07-09 16:11:03 | <albet70> | in Java, abstract class could extend interface, could typeclass extend typeclass? |
| 2021-07-09 16:14:07 | <boxscape> | albet70: we do have a thing called "super class", you can put constraints in the definition of a type class, e.g. `class Eq a => Ord a where ...` |
| 2021-07-09 16:14:10 | × | yauhsien quits (~yauhsien@61-231-39-135.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 2021-07-09 16:14:44 | <boxscape> | not sure how close that comes to what you're thinking of |
| 2021-07-09 16:14:58 | <Martinsos> | maerwald: ahh that is tricky, haven't considered that. Somehow thought that filepath functions should work only with filepaths :D! The problem is that for this proposal to make sense you need to support everything that was supported so far? I don't have complete understanding of the problem, but the approach where there is a more general concept then, OSString (or maybe it is just Path? Is that also too specific?), and then there is |
| 2021-07-09 16:15:10 | <Martinsos> | Upff just lost second part of the message |
| 2021-07-09 16:16:07 | <Martinsos> | Anyway FilePath being newtype for OsString, like Rust does, makes some sense. Although I don't at first undresatnd fromt he name what OSString stands for. I would that this more general than FilePath is just Path. OSString is even more general? What could that be? |
| 2021-07-09 16:16:25 | ← | safinaskar parts (~user@109.252.90.89) () |
| 2021-07-09 16:16:49 | <maerwald> | Martinsos: it's very simple... it's the encoding that the syscalls expect |
| 2021-07-09 16:16:53 | <maerwald> | in a way |
| 2021-07-09 16:17:09 | <maerwald> | so on windows it's UTF-16 (at least for Win32) and on unix it's just char[] |
| 2021-07-09 16:17:17 | <Martinsos> | aha, so this is all about the encoding. |
| 2021-07-09 16:17:21 | <maerwald> | yes |
| 2021-07-09 16:17:29 | <maerwald> | rust uses WTF-8 though on windows, a custom encoding |
| 2021-07-09 16:17:36 | → | econo joins (uid147250@user/econo) |
| 2021-07-09 16:17:48 | <maerwald> | internally |
| 2021-07-09 16:17:55 | <maerwald> | but once passed to syscalls it's UTF-16 |
| 2021-07-09 16:18:24 | <albet70> | boxscape how you describe the relation between typeclass and type |
| 2021-07-09 16:18:50 | <Martinsos> | Got it. Wish I could comment something more useful right now, but from my limited knowledge of the domain: sounds tricky all together :D / I am always in for keeping the types true to their name / approach 2 sounds reasonable |
| 2021-07-09 16:18:55 | <maerwald> | but it's not only filepaths that are UTF-16 |
| 2021-07-09 16:19:15 | <boxscape> | albet70: which typeclass and which type? |
| 2021-07-09 16:19:35 | → | Obo joins (~roberto@70.pool90-171-81.dynamic.orange.es) |
| 2021-07-09 16:20:10 | <Martinsos> | approach #3 surely not |
| 2021-07-09 16:20:15 | <albet70> | Semigroup and Monad |
| 2021-07-09 16:20:50 | <albet70> | Maybe and Monad |
| 2021-07-09 16:20:50 | <boxscape> | albet70: if you mean Semigroup and Monoid, Semigroup is a superclass of Monoid |
| 2021-07-09 16:21:00 | <boxscape> | Maybe is an instance of Monad |
| 2021-07-09 16:21:07 | <albet70> | yes |
| 2021-07-09 16:21:17 | <boxscape> | (Semigroup and Monad (as opposed to Monoid) are unrelated) |
| 2021-07-09 16:21:27 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 252 seconds) |
All times are in UTC.