Skip to content
View semperos's full-sized avatar

Organizations

@useshortcut
Block or Report

Block or report semperos

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
semperos/README.md

I'm Daniel (semperos) 👋

I work as an Engineering Manager at Shortcut.

Clojure is my primary programming language, been using it since 2010 and making a living with it since 2013.

💻 My Open Source Work

  • Ari: Array Relational Interactive Programming
  • PiLisp: An interpreted Lisp inspired by Clojure, implemented in Dart
  • Metazoa: Tools for viewing, testing, searching, and querying Clojure metadata
  • shortcut-repl: A REPL & CLI for Shortcut (Dart)
  • cci: Minimal CircleCI API CLI Client (Clojure via GraalVM native image)
  • clj-webdriver: (Unmaintained) Clojure API for Selenium-WebDriver

Tiny utilities:

  • csver: Convert JSON array over STDIN to CSV over STDOUT (Rust)
  • xmler: Small CLI utility to report on stats for XML sitemaps (Rust)
  • last-stacktrace: Utility to print stacktraces from JSONL logs (Rust)

Learning, experiments, and toys:

  • Gershwin: Stack-based, concatenative programming language with a Clojure runtime that targets the JVM
  • rankle: Experiments with data rank and tables in Clojure, inspired by J and Q
  • kintampo: Hierarchical data processing via file system + ZeroMQ
  • river-crossing-spec: TLA+ Specification for the "Wolf, goat, and cabbage" puzzle
  • AsIf: Language implemented as a Clojure transducer
  • Shackle: Stack-based language, implemented in the web browser
  • webdriver-logic: Logic programming API for testing web applications using clj-webdriver

💾 Technology I Use

  • Clojure for most of the professional code I've written
  • Goal for day-to-day data analysis, HTTP API interaction, and scripting
  • Julia and J for data analysis
  • Glamorous Toolkit built on Pharo Smalltalk for moldable development
  • LaTeX for authoring documents of all kinds
  • Ruby for writing scripts that I can share with folks that might find Clojure unapproachable
  • sops for managing secrets locally
  • fish as my primary shell
  • WezTerm and Alacritty as terminal emulators
  • tmux for multiplexing
  • Emacs, traditional bindings for Lisp-adjacent work, Vim bindings via evil-mode for everything else
  • NeoVim for text editing at the terminal
  • Visual Studio Code for most non-Clojure development
  • macOS at work
  • Ubuntu for Linux at home

📫 How to reach me:

Pinned Loading

  1. shortcut-repl shortcut-repl Public

    sc: A REPL & CLI for Shortcut https://shortcut.com

    Dart 2

  2. ari ari Public

    Ari: Array Relational Interactive Programming

    Go 1