This gist shows how to create a GIF screencast using only free OS X tools: QuickTime, ffmpeg, and gifsicle.
To capture the video (filesize: 19MB), using the free "QuickTime Player" application:
| { | |
| "@context": { | |
| "@vocab": "http://purl.org/dc/elements/1.1/", | |
| "dcterms": "http://purl.org/dc/terms/", | |
| "dpla": "http://dp.la/terms/", | |
| "edm": "http://www.europeana.eu/schemas/edm/", | |
| "geo": "http://www.w3.org/2003/01/geo/wgs84_pos#", | |
| "lcsh": "http://id.loc.gov/authorities/subjects/", | |
| "ore": "http://www.openarchives.org/ore/terms/", | |
| "skos": "http://www.w3.org/2004/02/skos/core#", |
| package main | |
| import ( | |
| "bufio" | |
| "bytes" | |
| "fmt" | |
| "github.com/richardlehane/siegfried" | |
| "github.com/slyrz/warc" | |
| "io/ioutil" | |
| "log" |
title: PCDM Profile Template author:
| package main | |
| import ( | |
| "context" | |
| "flag" | |
| "fmt" | |
| "log" | |
| "net/http" | |
| "os" | |
| "os/signal" |
A traditional table-based DFA implementation looks like this:
uint8_t table[NUM_STATES][256]
uint8_t run(const uint8_t *start, const uint8_t *end, uint8_t state) {
for (const uint8_t *s = start; s != end; s++)
state = table[state][*s];
return state;
}