I Wrote a String Type

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • IParse

    IParse: an interpreting parser written in C++

  • Nice library with many features. But I do not always understand the focus on memory usage. I guess that the reason behind this is that less memory allocations, have a positive effect on execution times. In a parser, where you often have to compare identifiers, it is a good idea to put all strings for identifiers into a unique pointer with the help of a hash table.

    In my interpreting parser [1] I use a hexa hash tree [2] for storing identifiers. It is not very memory efficient, but very fast. It turns every string (from the input buffer) into a unique pointer for that string pointing to a copy of the string. In this way comparing string (identifiers) is equivalent to comparing pointers.

    The idea of the hexa hash tree is that is a tree where each node has sixteen child nodes. Which node is selected is based on a step wise evaluated hash function that first takes the lower four bytes of the string, and after reaching the end of the string, the higher four bytes of the string. The nodes often taken up more memory space than the strings themselves.

    [1] https://github.com/FransFaase/IParse/

    [2] https://github.com/FransFaase/IParse/blob/master/software/Id...

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • From 0 to glTF with WebGPU: Basic Materials and Textures

    1 project | news.ycombinator.com | 2 May 2024
  • ESpeak-ng: speech synthesizer with more than one hundred languages and accents

    21 projects | news.ycombinator.com | 1 May 2024
  • Compilation of gripping C++ conference talks from 2023

    2 projects | dev.to | 2 May 2024
  • 00Key a 75% Keyboard

    1 project | news.ycombinator.com | 2 May 2024
  • Not all Graphs are Trees

    1 project | news.ycombinator.com | 1 May 2024