caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Drup <drupyog@zoho.com>
To: Peter Frey <pjfrey@sympatico.ca>, caml-list@inria.fr
Subject: Re: [Caml-list] Packing/Unpacking modules
Date: Tue, 15 Oct 2013 18:54:58 +0200	[thread overview]
Message-ID: <525D7362.1040708@zoho.com> (raw)
In-Reply-To: <BLU0-SMTP8533144C8587004076DD6EA31A0@phx.gbl>

Hi,

I started an abstraction over stream modules in my small library LILiS 
https://github.com/drup/LILiS but I only used already implemented stream 
modules.
It should be fairly easy to plug everything and it may be interesting to 
you, as an example use of streams.
In LILiS, the most important operation is concatmap and, by extension, 
concat. You also need a clone operation. I know it's not stream's best 
spot, but it happen that streams are often very good concatenable lists.

I ran a very small benchmark some time ago with the various stream 
implementations in batteries.
Afaik, Stream from the stdlib is similar to BatEnum while being worse in 
every aspects so it's not here. Also, it doesn't really handle cloning. 
Since I use concatenation extensively, regular lists take forever to 
run, so it's not included.

von koch simple, n = 11, 20 runs, time by run
BatSeq: 1.34s
BatEnum: 5.18s
BatLazyList : 9.55s

I'm quite curious how your streams perform, I may try later but I'm not 
sure I could implement concat quite as well as you would. I'm not very 
good at weird magic manipulation.

P.S. The benchmark module is not available anymore.




  reply	other threads:[~2013-10-15 16:55 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-14 23:11 Peter Frey
2013-10-15 16:54 ` Drup [this message]
  -- strict thread matches above, loose matches on Subject: below --
2013-09-20 23:22 Peter Frey
2013-09-21  0:17 ` Jeremy Yallop

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=525D7362.1040708@zoho.com \
    --to=drupyog@zoho.com \
    --cc=caml-list@inria.fr \
    --cc=pjfrey@sympatico.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).