Newest at the top
2024-06-30 20:15:48 +0200 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2024-06-30 20:15:26 +0200 | <monochrom> | Chapter 22 "type reconstruction" is type inference. |
2024-06-30 20:13:30 +0200 | <mreh> | nhar: not quite, mainly taking out all the boilerplate of buffering data and then sprinkling some types on top |
2024-06-30 20:12:35 +0200 | <nhar> | mreh: oh fun...so you're leveraging the HS type sytem to make sure you're generating GLSL type-correct code? |
2024-06-30 20:11:51 +0200 | <mreh> | so it's strong but not static |
2024-06-30 20:11:27 +0200 | <nhar> | monochrom: yeah. TaPL (types and programing languages?) The typing systems there start with simply-typed lambda calculus and kinda ends at F-w (or F*...can't remember which)...I don't think he covers hindley-milner |
2024-06-30 20:11:11 +0200 | <mreh> | nhar: well, there are implicit casts, but the types are enforced by the compiler |
2024-06-30 20:10:16 +0200 | <monochrom> | Err maybe not, I am not reading carefully. |
2024-06-30 20:10:15 +0200 | <nhar> | mreh: is GLSL a strongly typed language? |
2024-06-30 20:09:28 +0200 | <monochrom> | I have not heard of the name "co-contextual", but Pierce's TaPL definitely presents type inference that way. |
2024-06-30 20:08:58 +0200 | <mreh> | I might make something a bit more abstract for writing the shader code |
2024-06-30 20:07:42 +0200 | <mreh> | it's only inputs to the pipeline that I'm going to record at the type level |
2024-06-30 20:06:21 +0200 | <monochrom> | Ugh type-level GLSL haha |
2024-06-30 20:06:18 +0200 | leah2 | (~leah@vuxu.org) (Ping timeout: 255 seconds) |
2024-06-30 20:06:16 +0200 | <nhar> | I'm learning how to implement a hindley-milner-damas type inference algorithm and it's hurting my brain...thought this might be a simpler solution... |
2024-06-30 20:05:43 +0200 | <nhar> | Rembane: thanks! |
2024-06-30 20:05:33 +0200 | <nhar> | has anyone ever heard of co-contextual type systems? https://www.informatik.uni-marburg.de/~seba/publications/cocontextual-type-checking.pdf |
2024-06-30 20:05:11 +0200 | <mreh> | nhar: ^ |
2024-06-30 20:04:54 +0200 | <Rembane> | mreh: No worries! We're all here to learn. :D |
2024-06-30 20:04:39 +0200 | <nhar> | mreh: I've never done graphics before but it does sure sound like a challenge. From my experience I'm typically in the boat of "make your types super strong"...though I wish the UI for typelevel programing in haskell just re-used the value-level syntax... |
2024-06-30 20:03:25 +0200 | <mreh> | I'm hoping I can actually tackle the stuff I want to do with types |
2024-06-30 20:03:23 +0200 | <nhar> | Rembane: thnkx! I'm new to IRC and have no clue what I'm doing xD |
2024-06-30 20:03:06 +0200 | <mreh> | nhar: has it been helpful? |
2024-06-30 20:03:05 +0200 | <Rembane> | :D |
2024-06-30 20:03:02 +0200 | <lambdabot> | not an expression: ‘-- Markdown block quotes doesn't really work here. :)’ |
2024-06-30 20:03:02 +0200 | <lambdabot> | <no location info>: error: |
2024-06-30 20:03:01 +0200 | <Rembane> | > -- Markdown block quotes doesn't really work here. :) |
2024-06-30 20:02:54 +0200 | <nhar> | And I thought it was a great read! Super duper helpful |
2024-06-30 20:02:52 +0200 | <mreh> | OpenGL Shading Language |
2024-06-30 20:02:33 +0200 | <nhar> | what is GLSL? |
2024-06-30 20:02:23 +0200 | <nhar> | I'm not sure that that is... |
2024-06-30 20:02:17 +0200 | <lambdabot> | parse error (possibly incorrect indentation or mismatched brackets) |
2024-06-30 20:02:17 +0200 | <lambdabot> | <hint>:1:23: error: |
2024-06-30 20:02:15 +0200 | <nhar> | > I'm generating GLSL... |
2024-06-30 20:01:21 +0200 | <mreh> | Thinking With Types is a pretty nice book. |
2024-06-30 20:00:54 +0200 | <mreh> | nhar: I'm working on that |
2024-06-30 20:00:43 +0200 | <mreh> | I'm generating GLSL and want to see if I can statically check all the vertex buffers and uniforms are there when it comes to run it |
2024-06-30 20:00:36 +0200 | <nhar> | mreh: np! Not sure how user friendly it is - but if all else fails you could implement your own if your type-level-fu is up to it |
2024-06-30 20:00:07 +0200 | soverysour | (~soverysou@user/soverysour) (Ping timeout: 260 seconds) |
2024-06-30 19:59:49 +0200 | <mreh> | nhar: thx |
2024-06-30 19:59:45 +0200 | <mreh> | google is your friend |
2024-06-30 19:58:57 +0200 | dcoutts | (~duncan@ip-185-104-136-57.ptr.icomera.net) (Ping timeout: 256 seconds) |
2024-06-30 19:58:53 +0200 | <nhar> | mreh: i found this: https://hackage.haskell.org/package/type-level-sets-0.7 |
2024-06-30 19:57:36 +0200 | <mreh> | Is there an equivalent to a Map at the type level? |
2024-06-30 19:53:51 +0200 | <Lawrence1erkheim> | I think I get currying now* |
2024-06-30 19:53:51 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-06-30 19:53:46 +0200 | <Lawrence1erkheim> | Wait no, let me fix that |
2024-06-30 19:53:41 +0200 | <Lawrence1erkheim> | I get currying now |
2024-06-30 19:53:33 +0200 | <Lawrence1erkheim> | Oh my lord computerphile are so goated |
2024-06-30 19:53:16 +0200 | <monochrom> | A while ago I also thought about how to make >>= more theoretically pleasing. I haven't finished, but I think the first step is to flip the argument order, (a -> m b) -> (m a -> m b). Then it is just the unsurprising functor from the Kleisli category back to the original category. |