Skip to content

Instantly share code, notes, and snippets.

View Leandros's full-sized avatar

Arvid Gerstmann Leandros

View GitHub Profile
#!/bin/bash
#
# UPTIME MONITORING
# v1.0.0
#
### INSTALLATION
#
# 1. Install dependencies
#
# `apt-get install mailx curl openssl`
@Leandros
Leandros / compresspdf.sh
Created April 2, 2019 08:55
Compress PDF (requires ghostscript)
#!/bin/bash
readonly input="$1"
readonly output="$2"
readonly preset="$3"
if [ "$input" = "" ] || [ "$output" = "" ] || [ "$preset" = "" ]; then
echo "usage: $0 [input file] [output file] [screen|ebook|printer|prepress]"
exit 1
fi
@Leandros
Leandros / Makefile
Last active January 8, 2022 23:18
Minimal C++ Makefile
CC = clang++
CXX = clang++
DEBUG = -ggdb -O1 -march=native
RELEASE = -O2
CPPFLAGS := -I.
CXXFLAGS := $(DEBUG) -W -Wall -Wextra -std=c++17
LDLIBS := -lm
OUTPUT_OPTION = -MMD -MP -o $@ -MJ $@.json
# Modify your C++ filesuffix here:
/*
* Compile with re2c:
* $ re2c main.cpp -o main.re2c.cpp --nested-ifs --bit-vectors --utf-8 --no-debug-info
* $ g++ -std=c++17 -O3 -o test_re2c main.re2c.cpp
*/
#include <iostream>
#include <fstream>
bool
@Leandros
Leandros / results.txt
Last active July 2, 2018 05:29
PractRand Results
################################### SPLITMIX
############################################
$ ./splitmix | ./PractRand/RNG_test stdin32 -multithreaded
RNG_test using PractRand version 0.93
RNG = RNG_stdin32, seed = 0x1c3196f9
test set = normal, folding = standard (32 bit)
rng=RNG_stdin32, seed=0x1c3196f9
length= 256 megabytes (2^28 bytes), time= 3.0 seconds
no anomalies in 124 test result(s)
@Leandros
Leandros / random.h
Created July 2, 2018 05:22
C++ Pseudo Random Number Generators
/* Copyright (c) 2018 Arvid Gerstmann. */
/* This code is licensed under MIT license. */
#ifndef AG_RANDOM_H
#define AG_RANDOM_H
class splitmix
{
public:
using result_type = uint32_t;
static constexpr result_type (min)() { return 0; }
@Leandros
Leandros / main.z
Created June 23, 2018 15:04
Zlang Example
import Vec3;
import std::Concepts;
import std::Gc;
func Square(x: int) -> int {
return x * x;
}
/* PrintTest is overloaded on different concepts. */
<html>
<head>
<meta charset="utf-8">
<meta property="og:url" content="https://foo.bar">
<style>
#h1 {
font-size: 32px;
color: #fff;
}
</style>
@Leandros
Leandros / foo.cxx
Last active May 15, 2018 18:42
How I pimpl
#include "foo.hxx"
struct Foo::Implementation
{
int bar = 0;
};
PIMPL_UNIQUE_IMPL(Foo)
Foo::Foo()
#pragma once
struct Type0 { int x; };
struct Type1 { int x; };
struct Type2 { int x; };
struct Type3 { int x; };
struct Type4 { int x; };
struct Type5 { int x; };
struct Type6 { int x; };
struct Type7 { int x; };