This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-02-17
Channels
- # beginners (106)
- # cider (20)
- # cljs-dev (4)
- # cljsrn (1)
- # clojure (65)
- # clojure-austin (7)
- # clojure-canada (2)
- # clojure-russia (1)
- # clojure-spec (28)
- # clojure-uk (2)
- # clojurebridge (1)
- # clojurescript (32)
- # datomic (8)
- # docs (1)
- # emacs (27)
- # events (7)
- # fulcro (13)
- # garden (1)
- # hoplon (3)
- # leiningen (4)
- # luminus (2)
- # off-topic (32)
- # onyx (4)
- # parinfer (6)
- # pedestal (16)
- # re-frame (7)
- # reagent (5)
- # shadow-cljs (8)
- # spacemacs (2)
- # uncomplicate (4)
- # vim (3)
I'm trying to understand: invoke {virtual, special, static, interface, dynamic} invokestatic = static method of a class invokeinterface = called on interface how does invokevirtual, invokespecial, invokedynamic relate to each other?
@qqq google is thy friend https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-6.html#jvms-6.5.invokespecial
@tbaldridge: yeah, I still don't get what invokedynamic
does, besides:
1. it's useful for more 'dynamic` than static
calls
2. it's useful for implementing more dynamic languages on the jvm
3. I most likely don't need it for tensor math
what exactly don't you get after reading the article @tbaldridge linked? it describes pretty much everything you need to know about it and provides examples
For a workshop I have a couple of clojure processes handling events with messages sent through Kafka. Now I want to make an overview of the data flow. Does somebody know if there is any clojure(script) to make such an uml? The clojure source a leiningen multi module project, so it would be nice if that could be the basis.
looking at https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.10.1.9.lcmp
why is there fcmp_
and lcmp
and if_icmp_
but no icmp_
?
because adding variants for every type would mean too many instructions, so the jvm compromises and only added the most useful/used ones
weird question: can you guys recommend a book or course on an introduction to accounting?
thought about building a simple accounting app for myself (mostly for learning purposes), but realized i lack the fundamental domain knowledge in accounting 😄
@gklijs I once used a tool that visualized the dependencies between namespaces/functions using GraphViz, maybe you could use ingredients of that approach
I don’t remember which one it was. Maybe this one: http://bytopia.org/2016/09/17/nsgraph-clojure-namespace-dependency/
I saw that were things like that, and for the graphql endpoint specifically I can use https://github.com/walmartlabs/system-viz. But I rather want an overview of the different docker containers and the data flow between them, also including kafka. It would be nice if there was something where based on something like
(def system {:components [{:name :kafka-broker-1 :type :kafka-broker}{:name :kafka-broker-2 :type :kafka-broker}] :relations [{:between [:kafka-broker1 :kafka-broker2] :type :replication}]})
I could generate an overview of the system/data-flowIdeally the output could either be markdown to be included in a readme, or hiccup to be included in html.
another option would be to have a function witch passes the map to quil, and create an interactive animation.
I only had the write uml’s a few times, but I found it always painfull to get the output right. I would rather just describe the components and relations and have the uml generated based on that.
@wushee Most systems use double entry IIRC: https://en.wikipedia.org/wiki/Double-entry_bookkeeping_system
A book on accounting is likely going to be super boring IMO. I'd look for something like "Accounting for programmers/engineers"
@rauh hm, i thought datomic licenses were quite expensive? or is there a free/personal license?
Repeating myself here, but does somebody knows a nice way to go from some data to an uml-like image?
I normally use graphviz
@gklijs there’s a few Clojure libs for that as well
@tbaldridge thanks, that's also what's system-viz is using, do I will try that first for the module using components, and then figure out how to get something like it for the whole picture.