Skip to content

Instantly share code, notes, and snippets.

@algal
algal / California-time.bash
Created October 7, 2019 05:10
print the time in California, in RFC 2822 format
#!/bin/bash
# prints California time, on macOS or Ubuntu 18
exec env TZ='America/Los_Angeles' date -R
@algal
algal / vmstatistics64.swift
Last active August 16, 2022 07:45
Get virtual memory usage on iOS or macOS
import Darwin
import Foundation
// known good: Swift 5
// runs on macOS, probably works on iOS (but haven't tried)
/// Wraps `host_statistics64`, and provides info on virtual memory
///
/// - Returns: a `vm_statistics64`, or nil if the kernel reported an error
///
//
// processFIle.swift
// LineIteratorProj
//
// Created by Alexis Gallagher on 8/14/19.
// Copyright © 2019 Sculpt Labs. All rights reserved.
//
// known-good: Swift 5
@algal
algal / SwiftLineReader.swift
Created August 14, 2019 21:25
Lazily read a line at a time in Swift
import Foundation
// known good: Swift 5
typealias LineIteratorState = (
// pointer to a C string representing a line
linePtr:UnsafeMutablePointer<CChar>?,
linecap:Int,
filePtr:UnsafeMutablePointer<FILE>?
)
@algal
algal / RangeStrider.swift
Last active April 30, 2019 03:34
Sequence of Range<Int>s
// known-good: Swift 5.0.1
/*
# how to use:
instead of:
for i in 0 ..< (n-1)/bs {
let startIdx = i * bs
@algal
algal / PileView.swift
Last active March 8, 2019 23:19
Like a simple vertical stack view. No animations. But no magical mystery meat, and it works.
//
// Pile.swift
// PileTest
//
// Created by Alexis Gallagher on 3/6/19.
// Copyright © 2019 Bespoke. All rights reserved.
//
// known-good: Swift 4.2, iOS 12
@algal
algal / Zipping.swift
Created February 17, 2019 01:18
Zip files on iOS, without using external libraries and without interoperating with the low-level Compression framework
// Zipping.swift
// known-good: Swift 4.2
// Alexis Gallagher
import Foundation
public extension URL {
/// Creates a zip archive of the file or folder represented by this URL and returns a references to the zipped file
///
@algal
algal / regex.swift
Last active February 6, 2019 09:10
Swift Regular Expression Helpers
// known-good: Swift 4.2
// expected good: Swift 5.0
import Foundation
/*
This file defines three helpers for matching regular expressions against strings, and inspecting the results of capture groups in the regular expressions.
1. `RegexMatches(ofPattern:againstString:)` provides a lazy Sequence of matches, where every match is an array representing the matches capture groups.
@algal
algal / loadPoints.swift
Created December 28, 2018 19:41
Read vertex positions with Model I/O
// known-good: Swift 4.2, macOS
import Foundation
import ModelIO
private func LogDebug(_ s:Any) -> Void { print(s) }
private func LogInfo(_ s:Any) -> Void { print(s) }
private func LogError(_ s:Any) -> Void { print(s) }
struct POINT3D {
var x:Float
@algal
algal / readlines.swift
Last active December 11, 2018 19:25
Read lines in Swift
// known good: Swift 4.2
import Foundation
/// Returns an iterator that iterates through the lines of the file at path.
///
/// - Parameter path: path of the file to read
/// - Returns: the iterator, or nil if the file could not be read
func lineSequence(forFileAtPath path:String) -> AnyIterator<String>?
{