fast 0,0

A library for D that aims to provide the fastest possible implementation of some every day routines.

3 years after

fast

This library aims to provide the fastest possible implementation of some every day routines.

The contained functions avoid GC allocations and input validation. They may use SSE or stack allocations to reach a high throughput so that in some cases a 20 fold speed increase can be achieved.

Benchmark

A benchmark is included and can be run through dub, e.g.:

dub --build=release --compiler=gdc

Examples

Read JSON file with coordinates.
struct Coord { double x, y, z; }

void main()
{
    import fast.json;
    auto coords = json.coordinates.read!(Coord[]);
}
SSE3 accelerated splitting around '/' and '\'
string rest = pathname
string element;

import fast.string;
while (rest.split!`or(=\,=/)`(element, rest))
{
    // `element' is now the next directory.
    // `rest' is what remains after the \ or /.
}
// `element` is now the file name part of the path.
Calling Windows API functions.
void createHardlink(string from, string to)
{
    import fast.cstring : wcharPtr;
    CreateHardLinkW(wcharPtr!to, wcharPtr!from, null);
}
Calling Linux API functions.
void createHardlink(string from, string to)
{
    import fast.cstring : charPtr;
    link(charPtr!from, charPtr!to);
}

Related Repositories

fast-ruby

fast-ruby

:dash: Writing Fast Ruby :heart_eyes: -- Collect Common Ruby idioms. ...

fast-rcnn

fast-rcnn

Fast R-CNN ...

Fast-Android-Networking

Fast-Android-Networking

A Complete Fast Android Networking Library that also support HTTP/2 ...

apt-fast

apt-fast

apt-fast: A shellscript wrapper for apt that speeds up downloading of packages. ...

fast-http-server

fast-http-server

Super fast, zero configuration command line HTTP Server. ...


Top Contributors

mleise MartinNowak

Releases

-   v0.3.1 zip tar
-   v0.3.0 zip tar
-   v0.2.1 zip tar
-   v0.1.0 zip tar