Note: This website is archived. For up-to-date information about D projects and development, please visit

Welcome to Blip

Blip is moving to these pages will disappear

a library that focuses on basic things that can be useful for scientific HPC programs. It offers:

  • N-dimensional arrays (blip.narray) that have a nice interface to lapack (that leverages the wrappers of baxissimo)
  • 2,3 and 4D vectors, matrixes and quaternions from the omg library of h3r3tic
  • random and combinatorial(extensive) testing framework (blip.rtest), parallel
  • serialization (blip.serialization) that supports both json format, that can be used also for input files and an efficient binary representation
  • SMP parallelization (blip.parallel.smp) a numa aware very flexible framework
  • MPI parallelization built on the top of mpi, but abstracting it away (so that a pure tcp implementation is possible), for tightly coupled parallelization
  • a Distribued Objects framework that does rpc via proxies (blip.parallel.rpc)
  • a simple socket library that can be used to connect external programs, even if written in fortran or C (for a weak parallel coupling)
  • a coherent and efficient io abstraction

The source is available at github

  • install: git clone git:// (see GettingStarted for the details)


  • 2010-11-17 announcing blip 0.5
  • 2010-10-22 smp parallelization interface has stabilized
  • 2010-10-22 native (non tango based) input handling is used for sockets, output is pretty much stable.
  • 2010-10-22 libev is used for socket io and sleep
  • 2010-10-22 ip6 socket implementation is available on *nix

  • 2010-10-22 rpc parallelization is also working

Starting Points

  • HowToD, how to set up a D environment on linux x86_64

For a complete list of local wiki pages, see TitleIndex.