Fork me on GitHub
#clojure-europe
<
2023-09-29
>
seancorfield05:09:14

Morgen. Happy Friday!

Mario Trost06:09:24

Morning and happy Friday to you too!

dharrigan06:09:44

Good Morning!

mdiin06:09:01

Godmorgen

genRaiy07:09:38

Good morning

❤️ 1
otfrom09:09:09

How did you get that picture of my code ?

genRaiy10:09:46

easy: it was AI generated based on your Slack history

otfrom10:09:13

I am frequently a PEBCAK

genRaiy11:09:39

ain't we all.

schmalz07:09:15

Morning all.

simongray07:09:53

’morgen allesammen

maleghast07:09:53

madainn mhath! :flag-scotland:

mdallastella08:09:29

Morning and happy Friday!

🎉 1
jasonbell09:09:42

Morning

👋 2
mccraigmccraig14:09:24

does this always happen with typed langs ? i started out trying to port a clj/s lib to typescript and now i'm browsing https://github.com/ronami/meta-typing for all the hacks^h^h^h^h^htechniques to do transformations on types 😭

mccraigmccraig15:09:14

they are neat tricks, but i can't help but wish that types were plain old data structures and i could create new types with all the usual functions, like you can with https://github.com/LuxLang/lux#types

Ed15:09:13

I think that typescript is unusual in that it has a turing complete type system. Which always seems a bit like missing the point of type systems to me. But it does let you write things like this:

const thing = { key: { map: ['of', 'values'] } } as const;
type ThingKeys = keyof typeof thing;
const f = (t: ThingKeys) => thing[t];
f('key');
which might come somewhere near types that are "plain old data structures"

mccraigmccraig16:09:54

i gather haskell and scala have turing complete type systems too...

mccraigmccraig16:09:05

and i know lisps are unusual in having the base language available at compile-time, but lux's approach of encoding types in plain old data structures in the base language sure seems nice compared to having a completely separate and quite weird type language!

mccraigmccraig16:09:26

but meanwhile, i seem to be constructing filter and map functions on types with typescripts conditional recursive and mapped types, so it's a weird kinda fun 😀

Ed17:09:42

;) ... I'd not looked into lux before ... I'll have to add it to the reading list ;)

mccraigmccraig17:09:15

it's an interesting language with some very neat ideas (e.g. monadic macros... like a state-monad where the state is the full compiler state, itself just another plain old data structure)... but it's been around for a while and doesn't seem to have gotten much momentum

👍 1