Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lacking Documentation #1

Open
ekmett opened this issue Aug 17, 2012 · 17 comments
Open

Lacking Documentation #1

ekmett opened this issue Aug 17, 2012 · 17 comments

Comments

@ekmett
Copy link
Owner

ekmett commented Aug 17, 2012

No description provided.

@ekmett
Copy link
Owner Author

ekmett commented Aug 28, 2012

We have haddock coverage now. Examples would help, though.

@haf
Copy link

haf commented May 11, 2013

Are there any more examples somewhere? Just the most basic things would make a lot of difference.

@ekmett
Copy link
Owner Author

ekmett commented May 11, 2013

Paul Chiusano And Runar Bjarnason have written a number of examples for the scala version of machines. the Haskell version has yet to pick up nice examples admittedly, but most of them should transcode cleanly.

@haf
Copy link

haf commented May 11, 2013

Actually I'm interested in the F# version, but I will accept examples in any language ;). I have tried googling, but my fu is not with me today...

@ekmett
Copy link
Owner Author

ekmett commented May 11, 2013

My first reaction: "There's an F# version?" ;)

@ekmett
Copy link
Owner Author

ekmett commented May 11, 2013

There should be a link to @runarorama 's slides in the README. @pchiusano gave a talk at NEScala 2013 that is also relevant and IIRC was recorded.

@haf
Copy link

haf commented May 11, 2013

@ekmett I have already read the slides; but they seem to just be a type declaration per slide. It was probably easier to follow with speech attached.

The F# version is done by @pocketberserker. =)

I was also able to locate a few of your gists with more type declarations in them, and the wikipedia entry on Mealy machines...

My aim is to use machines to read data from the network into record type, from a given binary format. I want to have one step that does the read :: unit -> async<chunk> (because the CLR maps that to aio / IO Completion ports), and another step that yields when we have sizeof<FetchRequestPartitionData> / sizeof<chunk> chunks as a FetchResponsePartitionData.

But I'm at a loss on how to get started.

@rodlogic
Copy link

fwiw, the lack of documentation was also show stopper for me. The current level of docs assume someone very well versed in haskell and underlying patterns.

@ekmett
Copy link
Owner Author

ekmett commented May 11, 2013

The current state of the documentation is very much an artifact of machines being a work-in-progress, while we try to find a better point in the design space, than a finished product.

@haf
Copy link

haf commented May 11, 2013

Fair enough. I find them very interesting anyway! 👍

If someone knows how to explain their current implementation I'd be all ears; e.g. if that presentation video can be found somewhere...

@ekmett
Copy link
Owner Author

ekmett commented May 11, 2013

http://m.youtube.com/#/watch?v=8fC2V9HX_m8&desktop_uri=%2Fwatch%3Fv%3D8fC2V9HX_m8 is the link for me, but I'm on my iPad, YMMV.

@haf
Copy link

haf commented Dec 24, 2013

Link doesn't work... Has there been any documentation efforts the last 8 months?

@acowley
Copy link
Contributor

acowley commented Dec 24, 2013

I'll try to take a whack at it in the new year. I have a fork full of all kinds of experiments which I need to pare down. My large code base that depends on it needs a refactoring, so I'll see what parts of machines I'm using at that point, and fill in the documentation then.

@ekmett
Copy link
Owner Author

ekmett commented Dec 25, 2013

@haf pretty much nothing.

@acowley has been going nuts in his own (not-so) little fork.

We need to figure out how much of that makes sense to merge in, and how much can be handled as an add-on library.

@haf
Copy link

haf commented Dec 25, 2013

For the moment I would be happy with a longer list of links for the underlying concepts. I tried going to the hackage page for this library and clicking through to the documentation for all the type classes that are being used (Arrow, Category, Profunctor and so on), but that search is not very directed.

I understand the core concept that you create a machine which is a deferred execution plan which you can later run. I understand the above concepts are useful for composing and constructing the machines. What I don't get is the very starting point, the most basic concepts that can be used without all the other 'features' by the side.

@dhaya
Copy link

dhaya commented Jan 5, 2014

@YoEight
Copy link
Collaborator

YoEight commented Mar 11, 2015

For what it worth, I find the documentation 'good enough'. Having examples is a different matter

YoEight pushed a commit that referenced this issue Nov 23, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants