This is the repository for the peteroupc.github.io site. It will contain information on several of my projects on GitHub.
--Peter O.
Open-source articles on randomness, programming, and more. Help me on my requests and open questions (and open questions on the Bernoulli factory problem, and other open questions on probability).
Random and Pseudorandom Number Generators
- Random Number Generator Recommendations for Applications
- A Note on Randomness Extraction
- Testing PRNGs for High-Quality Randomness
- Examples of High-Quality PRNGs
- Notes on Jumping PRNGs Ahead
- A Note on the Bays–Durham Shuffle
Random Variate Generation, Randomization, and Exact Sampling
- Randomization and Sampling Methods
- More Random Sampling Methods
- Partially-Sampled Random Numbers for Accurate Sampling of Continuous Distributions
- Bernoulli Factory Algorithms
- Supplemental Notes for Bernoulli Factory Algorithms
- Miscellaneous Observations on Randomization
- Randomized Estimation Algorithms
- The Sampling Problem
- More:
In the articles above, I put an emphasis on random variate generation that:
- Samples exactly from a discrete distribution (such as Bernoulli factory algorithms).
- Samples from a continuous distribution with arbitrary precision and a user-specified accuracy.
- Avoids floating-point arithmetic.
- Avoids calculating transcendental functions when possible.
Colors, Graphics, and Music
- Color Topics for Programmers
- Supplemental Color Topics for Programmers
- Essentials of SVG
- Graphics and Music Challenges for Classic Computer Applications
- Three challenges: retro graphics engine, public-domain music synthesis, and classic tiled wallpapers.
Other Articles on Mathematics and Programming
- Approximations in Bernstein Form
- Used above all in the supplemental notes for Bernoulli factories.
- A Note on Hash Functions
- Pseudocode Conventions
- On a claim of computational complexity
- File Name Support in Applications
Other Articles
- Suggestions for Instructional Materials
- Overused and Discouraged Words and Phrases
- A Wish for a New Atlas
- Pseudocode Conventions
- Random Number Generator Recommendations for Applications
- Randomization and Sampling Methods
- More Random Sampling Methods
- The Most Common Topics Involving Randomization
- Partially-Sampled Random Numbers for Accurate Sampling of Continuous Distributions
- Bernoulli Factory Algorithms
- Testing PRNGs for High-Quality Randomness
- Miscellaneous Observations on Randomization
- Examples of High-Quality PRNGs
- Notes on Jumping PRNGs Ahead
- A Note on Hash Functions
- A Note on Randomness Extraction
- A Note on the Bays–Durham Shuffle
- File Name Support in Applications
- Color Topics for Programmers
- Supplemental Color Topics for Programmers
- Essentials of SVG
- html3dutil: A public domain JavaScript library for easing the development of HTML 3D applications.
- html-gears: An HTML5 3D implementation of the public domain sample, gears.c
- canvasback: Displays an HTML canvas-based background that draws boxes in about the same color as the background color
- colorpicker: A color picker in JavaScript. Supports adapters for integrating other popular color pickers, and can use native color selection controls. In the public domain.
- IdnaJS: A JavaScript implementation of IDNA 2008 and Unicode normalization
- BigNumber: An arbitrary-precision arithmetic library for JavaScript