<devyn>
also wtf is with all of the join/quit spam lately
<devyn>
it's a bit excessive
<devyn>
more than normal o.o
<devyn>
weird
englishm1 has joined #elliottcable
englishm has quit [Ping timeout: 264 seconds]
<devyn>
-sol
<purr>
devyn: 16 195 ſ 133 204
<devyn>
16 kſ, wow
eligrey has quit [Quit: Leaving]
<vigs>
devyn: re: prairie doggin'—I think freenode was having issues (netsplit or whatever) yesterday…but yeah it does seem excessive
* vigs
pats purr
* purr
rrrr
<vigs>
who's a good bot? you are, yes you are.
<devyn>
<3
<devyn>
-perl
<devyn>
:(
<devyn>
-learn perl = @$*&^%@&$*^%@&$^%@
<purr>
devyn: Learned `perl`.
eligrey has joined #elliottcable
eligrey has quit [Remote host closed the connection]
bradleymeck has joined #elliottcable
englishm has joined #elliottcable
englishm1 has quit [Ping timeout: 252 seconds]
englishm has quit [Ping timeout: 276 seconds]
<devyn>
ELLIOTTCABLE: Symbols are full objects and can have members? So if I intern a symbol "hello" and give it a member, and then look that symbol up again, that member will still be there?
<ELLIOTTCABLE>
devyn: this has been discussed back and forth several times.
<ELLIOTTCABLE>
For the moment, symbols are *not* object-identity-comparable; instead, their *contents* are object-identity-comparable.
<ELLIOTTCABLE>
That is, there is an interned string backing each Symbol;
<ELLIOTTCABLE>
and the backing-identity can be compared with `infrastructure label compare`
<ELLIOTTCABLE>
but two Symbols that `infrastructure label compare` as equal, won't necessarily `infrastructure compare` (which uses object-identity comparison) as equal.
<ELLIOTTCABLE>
make sense?
<devyn>
oh okay
<devyn>
is there anything wrong with making them global objects anyway?
<devyn>
in a particular implementation
<ELLIOTTCABLE>
devyn: well, it basically adds “global scope” to Paws, which Paws otherwise doesn't have.
<ELLIOTTCABLE>
generally, if you don't have access to <x data> given to you by some link in the data-graph, then you can't ever gain access to it. i.e. the data-graph describes *all* relationships
<ELLIOTTCABLE>
but if two "foo" labels have the same metadata, then any two blocks of code with the label "foo" embedded in them, now share state
<ELLIOTTCABLE>
the ramifications of that are non-obvious /=
<ELLIOTTCABLE>
could be fine, but I doubt that it is.
<devyn>
okay
<devyn>
I'll change it again then
<ELLIOTTCABLE>
it's time to start thinking about a distribution format.
<devyn>
this is so fucking ugly in Haskell omg >_<
<devyn>
so much mutable state
<devyn>
so much dynamic typing
<devyn>
Haskell reallllllly doesn't like dynamic typing... the best you can do is monomorphic dynamic typing
<devyn>
in Rust at least you can hold a reference to a trait, which would make this more pleasant
<ELLIOTTCABLE>
I really want to learn Rust. (=
<devyn>
so do I
<devyn>
I only know some things about it
<devyn>
and
<devyn>
unfortunately it seems like they're on a mission to remove all sigils
<devyn>
which I didn't originally like but
<devyn>
some code is gonna be super ugly now
<ELLIOTTCABLE>
ick.
bradleymeck has quit [Quit: bradleymeck]
<devyn>
ELLIOTTCABLE: I think I give up on trying to do this in Haskell... the dynamic typing is just hellish and gross