Fork me on GitHub
#off-topic
<
2018-02-17
>
qqq01:02:29

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?

qqq05:02:11

@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

bronsa10:02:13

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

gklijs10:02:19

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.

qqq11:02:18

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_ ?

bronsa11:02:24

because adding variants for every type would mean too many instructions, so the jvm compromises and only added the most useful/used ones

bronsa11:02:50

you can still express everything you need by combining other instructions

tstelzer11:02:20

weird question: can you guys recommend a book or course on an introduction to accounting?

tstelzer11:02:12

thought about building a simple accounting app for myself (mostly for learning purposes), but realized i lack the fundamental domain knowledge in accounting 😄

tstelzer11:02:44

something like "accounting for dummies", something superficial would suffice

borkdude12:02:30

@gklijs I once used a tool that visualized the dependencies between namespaces/functions using GraphViz, maybe you could use ingredients of that approach

borkdude12:02:53

I don’t remember which one it was. Maybe this one: http://bytopia.org/2016/09/17/nsgraph-clojure-namespace-dependency/

gklijs12:02:52

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-flow

gklijs12:02:34

Ideally the output could either be markdown to be included in a readme, or hiccup to be included in html.

gklijs12:02:24

another option would be to have a function witch passes the map to quil, and create an interactive animation.

gklijs13:02:48

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.

rauh15:02:21

Eg. gnu cash

rauh15:02:16

A book on accounting is likely going to be super boring IMO. I'd look for something like "Accounting for programmers/engineers"

tstelzer15:02:51

@rauh nice, precisely what i was looking for

rauh15:02:39

@wushee Also datomic will work great with this kind of data!

tstelzer15:02:10

@rauh hm, i thought datomic licenses were quite expensive? or is there a free/personal license?

rauh15:02:20

There is.

gklijs18:02:13

Repeating myself here, but does somebody knows a nice way to go from some data to an uml-like image?

tbaldridge18:02:35

I normally use graphviz

tbaldridge18:02:16

@gklijs there’s a few Clojure libs for that as well

gklijs18:02:59

@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.