Example usage of
tap: https://quanttype.net/posts/2018-10-18-how-i-use-tap.html
I've also briefly read the source code of the datafy namespace (short and
easy to understand), and my understanding is that it's currently for
one-way transformation of Java Objects into Clojure data through the
Datafiable protocol but it will attach the original object as a metadata to
the Clojure data produced. My feeling tells me that datafy will be used to
transform a clojure.spec object into data... (to avoid breaking the current
spec API). I haven't understood the nav function and associated Navigable
protocol yet though.
On Wednesday, November 7, 2018 at 9:40:28 AM UTC+1, Didier wrote:
>
> Hum, just noticed tap. Seems really interesting. I'm not thinking of any
> concrete usage for now, but I like it!
>
> Also, is the object in the datafy description referring to a Java object?
> If so, is it a way to transform nested Java objects into Clojure data, and
> possibly back?
>
> On Wednesday, 7 November 2018 00:12:44 UTC-8, Khalid Jebbari wrote:
>>
>> Alex, it's funny that the example you showed about using the new
>> extension mechanism looks very much like implementing lifecycle hooks in
>> React.js (and the various CLJ/CLJS wrappers).
>>
>> Indeed having value-based extension makes it much more flexible than
>> having to use deftype/defrecord. My understanding is that since it's based
>> on metadata, one could extend after the fact with
>> `reset-meta!`/`alter-meta!` right?
>>
>> On Tuesday, November 6, 2018 at 2:42:45 PM UTC+1, Alex Miller wrote:
>>>
>>> 1.10.0-beta5 is now available.
>>>
>>> You can try it with clj using:
>>>
>>> clj -Sdeps '{:deps {org.clojure/clojure {:mvn/version
>>> "1.10.0-beta5"}}}'
>>>
>>> Changes in 1.10.0-beta5:
>>>
>>>
>>> - In addition to prior methods of extension, values can now extend
>>> protocols by adding metadata where keys are fully-qualified symbols
>>> naming
>>> protocol functions and values are function implementations. Protocol
>>> implementations are checked first for direct definitions (defrecord,
>>> deftype, reify), then metadata definitions, then external extensions
>>> (extend, extend-type, extend-protocol). datafy has been updated to use
>>> this
>>> mechanism.
>>> - `symbol` can now be passed vars or keywords to obtain the
>>> corresponding symbol
>>> - CLJ-2420 <https://dev.clojure.org/jira/browse/CLJ-2420> error
>>> reporting enhancements - more refined phase reporting, new
>>> clojure.main/ex-triage split out of clojure.main/ex-str, execution
>>> errors
>>> now report the top *user* line in the stack trace omitting frames from
>>> core, enhancements to providing file and line via meta on a form
>>> - CLJ-2425 <https://dev.clojure.org/jira/browse/CLJ-2425> add java
>>> 11 javadoc url
>>> - CLJ-2424 <https://dev.clojure.org/jira/browse/CLJ-2424> fix test
>>> bug from CLJ-2417
>>>
>>> You can read the full 1.10 changelog here:
>>> https://github.com/clojure/clojure/blob/master/changes.md
>>>
>>
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.