Comments (13)
This is a great idea 👍
from cats.
http://xuwei-k.github.io/cats-2015-02-06.svg
from cats.
Awesome!
from cats.
FWIW, I think the semigroupoid layout (text or not) is easier to digest and is a little more accessible.
from cats.
Oh wow the boxes in @xuwei-k's diagram are links to the source. That's fantastic!
from cats.
ok, so we have sat on this for way too many months. can someone just integrate the @xuwei-k into our docs somewhere?
Is this something we can regenerate easily when stuff chnages? @xuwei-k ?
from cats.
Please feel free to use this :)
- xuwei-k@4549ac6d58c8
- https://github.com/xuwei-k/sbt-class-diagram
- http://xuwei-k.github.io/cats-2015-06-05.svg
from cats.
I really like the idea of auto-generating diagrams a la sbt-class-diagram. However, I decided to take a crack at making a graph by hand to see if I could use color and layout to help give folks a better intuition about what is going on: http://plastic-idolatry.com/erik/cats-graph.png.
What do you all think? Auto-generating the graph (and keeping it automatically-updated) is really nice, but I think having colors, method names, and a manually layout may be nice too.
from cats.
Nice, I think it is worth to have a hand made diagram, it can be much clearer and typeclasses should be pretty stable (in a few a releases).
from cats.
Can we have the best of both worlds?
If sbt-class-diagram is already there, then it seems we're okay with a
dependency on graphviz.
So how doable is it to annotate typeclasses with colour and grouping hints
that get passed through to the dotty source?
On 22 June 2015 at 09:06, Julien Truffaut [email protected] wrote:
Nice, I think it is worth to have a hand made diagram, it can be much
clearer and typeclasses should be pretty stable (in a few a releases).—
Reply to this email directly or view it on GitHub
https://github.com/non/cats/issues/95#issuecomment-114035082.
Kevin Wright
mail: [email protected]
gtalk / msn : [email protected]
quora: http://www.quora.com/Kevin-Wright
google+: http://gplus.to/thecoda
[email protected]
twitter: @thecoda
vibe / skype: kev.lee.wright
steam: kev_lee_wright
"My point today is that, if we wish to count lines of code, we should not
regard them as "lines produced" but as "lines spent": the current
conventional wisdom is so foolish as to book that count on the wrong side
of the ledger" ~ Dijkstra
from cats.
@kevinwright That's an interesting idea.
@xuwei-k Do you think it would be possible to provide styling grouping hints to sbt-class-diagram? Do you have a sense of how well that might work?
from cats.
(Also, here is the diagram for the C[_, _] type classes: http://plastic-idolatry.com/erik/cats-graph2.png)
from cats.
I am going count this as fixed by #1416
from cats.
Related Issues (20)
- Inconsistent behaviour when using Eval as Applicative
- `Tuple1SemigroupalOps` methods have different names from other `TupleNSemigroupalOps` classes HOT 3
- Instances for Currency HOT 7
- EitherT[Option, ?, ?]] can't be used as a bifunctor HOT 5
- trait EuclidianRing should not be a Ring HOT 4
- OutOfMemoryError when IO.uncancelable is used in recursive function HOT 1
- ambiguous implicit resolution of `Show.ContravariantShow[immutable.SortedMap[K, V]]` HOT 1
- Should Monad extend Defer? HOT 11
- Support Scala Native 0.5 HOT 3
- Adding an alternative version of the method whenA with a different signature
- `Eval` thread safety HOT 4
- Optimize `distinct`/`distinctBy` implementations for non-empty collections
- [PROPOSAL] Aliases for methods `traverse_` and `sequence_` HOT 7
- Any reason `intercalate` isn't exposed directly on the `Semigroup` companion object? HOT 3
- (very breaking) change in Future instances? HOT 5
- Reveal internal but public identifiers and make them `private[cats]`
- Cats Order needs an `orElseBy` combinator HOT 8
- Loss of type safety in scala 3 under certain conditions
- Make Later covariant in its type parameter
- Ease awkward constructions when doing something before raising HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cats.