scratch
hash-prospector
Our great sponsors
scratch | hash-prospector | |
---|---|---|
51 | 12 | |
333 | 432 | |
- | - | |
9.0 | 2.8 | |
2 days ago | about 2 months ago | |
C | C | |
The Unlicense | The Unlicense |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
scratch
- Windows XP dedicated image viewer?
-
What Happens Before the Main Function is Called ?
pbmview, an image viewer (windows subsystem).
-
A couple freestanding parsers in C99
For comparison (for those following along): https://github.com/skeeto/scratch/blob/master/parsers/qoi.c https://github.com/skeeto/scratch/blob/master/parsers/ini.c
- (POSIX) theory and practice of the useless use of cat
- [2023-05-19] Challenge #400 [Intermediate] Practical Numbers
-
Difference in accuracy when compiling in windows and linux
Another option I learned a couple years ago is embedding a UTF-8 manifest ([details])[https://github.com/skeeto/scratch/tree/master/libwinsane]. Also put the console in UTF-8 mode (SetConsoleOutputCP(CP_UTF8)), and you're done. Works on Windows 10 and later. This covers everything: argv is UTF-8 and fopen accepts UTF-8 paths. (This is exactly how CRTs should have worked all along.)
-
I made this small program in C :)
I was thinking more about this and I realized it's quite easy to do it in arbitrary precision, so here's my take: https://github.com/skeeto/scratch/blob/master/misc/bswap.c
-
Beside SDL, is there an easier way to just show a custom rectangle with text, cross-platform?
As was linked from my QOI article, here's my full decoder with comments: qoi.c. Each pixel decodes to a 32-bit integer, ABGR. That corresponds to SDL's SDL_PIXELFORMAT_ABGR8888. SDL_UpdateTexture copies that data into the texture's internal storage, and font is no longer needed. (In a real program I'd allocate it in a scratch arena, reset after initialization.)
-
GitHub - pmkenned/pmk_string: A simple string library in C
A recent, interesting experience with function+context allocation: For more than a decade, Windows accidentally exposed part of zlib in a public DLL, and (overly-)clever applications can exploit this as a "system zlib." Though it doesn't export the "end" functions, so cleanup seems impossible. However, custom allocation works, so doesn't matter. I plugged it into an arena.
- decompressing a .deflate file?
hash-prospector
-
A very good, one might say, a 'perfect' hashtable algorithm! Thoughts?
But for good general purpose hash functions, you can also take a look at u/skeeto's prospector project.
-
FRand: A Fast and Simple PRNG Library in Rust
Special thanks to hash-prospector for inspiration and useful information.
-
"Tests for randomness" by jonmaiga (creator of mx3)
A project to keep an eye on in the future. The -search command is very much like my own hash search, plugging different constants into xmxmx.
-
Do you think there needs to be protection from player's reloading saves when something negative happens?
Maybe look at https://github.com/skeeto/hash-prospector https://www.reedbeta.com/blog/hash-functions-for-gpu-rendering/
-
Fixing the Linear Congruential Generator
New best known functions
-
A Single Header Vectorized Hash Function (~9.6 GB/s)
https://github.com/skeeto/hash-prospector (recently outdone)
-
Weird problem: print every 32 bit number once, in random order, without wasting memory
Where each 0xXXXXXXXX is a random, odd 32-bit integer. Not all choices are equal, and you can find some excellent xmx parameters here: https://github.com/skeeto/hash-prospector/issues/19
-
A Simple Hash for Perlin Noise
For my stack based texture generator I used (utilizing https://github.com/skeeto/hash-prospector )
let intHash = x => {
-
Simplest way to create strongly typed using/typedefs for ints?
This is one of the best known hashes for 32 bit integers. See https://github.com/skeeto/hash-prospector and https://nullprogram.com/blog/2018/07/31/
-
Sebastian Lague – Coding Adventure: Ant and Slime Simulations
And here's how I design hash functions: https://github.com/skeeto/hash-prospector
What are some alternatives?
w64devkit - Portable C and C++ Development Kit for x64 (and x86) Windows
pbrt-v4 - Source code to pbrt, the ray tracer described in the forthcoming 4th edition of the "Physically Based Rendering: From Theory to Implementation" book.
busybox-w32 - WIN32 native port of BusyBox.
frand - Blazingly Fast Pseudo Random Number Generator written in Rust
BUSY - BUSY is a lean, statically typed, cross-platform, easily bootstrappable build system for GCC, CLANG and MSVC inspired by Google GN
c-hashmap - A fast hash map/hash table (whatever you want to call it) for the C programming language.
PSCalendar - :calendar: A set of PowerShell commands for displaying calendars in the console.
meow_hash - Official version of the Meow hash, an extremely fast level 1 hash
cimgui - c-api for imgui (https://github.com/ocornut/imgui) Look at: https://github.com/cimgui for other widgets
tests-for-randomness - A collection of tests for randomness.
gameinfojs - High level interface to the functionality provided by the other game* libraries
PL3D-KC - A very fast and simple software renderer using only integers and fixed point math. PiSHi LE (PL) is a subset of the 3D software graphics library used in King's Crook.