Fork me on GitHub
#cljs-dev
<
2016-11-18
>
dnolen15:11:06

Let me know if there are some tickets that need looking at, focusing on ClojureScript today

anmonteiro15:11:57

I worked on 1816, 1643, 1616 and 1497 recently

dnolen16:11:28

@anmonteiro so this one is a bit more interesting than it seems

dnolen16:11:43

I wonder if we should just implement MapEntry

dnolen16:11:39

hrm actually I don’t think that’s necessary

dnolen16:11:19

ah k, so there is a problem with this patch

dnolen16:11:27

it’s a breaking change for custom collection implementers

anmonteiro16:11:54

@dnolen hrm you mean people who implement IAssociative?

dnolen16:11:41

so we need a new protocol

dnolen16:11:46

and we need to check for that in find

anmonteiro16:11:50

that's deviating from Clojure though

dnolen16:11:50

and fall back

anmonteiro16:11:01

but I understand what you say, for compat

dnolen16:11:05

the protocol set already deviates from Clojure

dnolen16:11:08

so I’m not concerned about that

dnolen16:11:21

it’s just too big of a breaking change

dnolen16:11:00

the patch also missed fixing defrecord 🙂 and I suspect 5 years in people have lots of custom collection types

anmonteiro16:11:54

@dnolen yeah I missed that, I'll integrate it in as well

dnolen16:11:19

I think we should think a bit about the protocol name

dnolen16:11:25

so we have a sensible predicate

anmonteiro16:11:13

perhaps something related to find?

dnolen16:11:25

findable? doesn’t so good though

dnolen16:11:19

IFind + ifind?

anmonteiro16:11:28

looks like findable is actually a word, I didn't know that

dnolen16:11:53

yes but findable sounds like it’s referring to an entry

dnolen16:11:56

not the collection

dnolen16:11:20

let’s just go with IFind + ifind?

dnolen16:11:36

we won’t break anyone

dnolen16:11:45

and anybody that wants to fix their collection can do so incrementally

anmonteiro16:11:50

this is about finding an entry in a collection, though

dnolen16:11:08

a key is findable

dnolen16:11:14

a collection is not findable

anmonteiro16:11:58

does entryAt also belong to this new protocol?

dnolen16:11:26

entryAt what is that?

anmonteiro16:11:36

-entry-at , sorry

anmonteiro16:11:44

the method in the IAssociative protocol

dnolen16:11:50

IFind is a new protocol with one method -entry-at

anmonteiro16:11:38

@dnolen I thought we could use IFind as a marker protocol and keep -entry-at in IAssociative

dnolen16:11:58

that seems strange - we should just split it out

dnolen16:11:04

I don’t want to make a special case like that