Skip to content
View semperos's full-sized avatar

Organizations

@useshortcut
Block or Report

Block or report semperos

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:

Popular repositories Loading

  1. clj-webdriver clj-webdriver Public archive

    [UNMAINTAINED] Clojure API for Selenium-WebDriver

    Clojure 439 92

  2. webdriver-logic webdriver-logic Public

    Logic programming API for testing web applications using clj-webdriver

    Clojure 67 3

  3. rankle rankle Public

    ALPHA Experiments with data rank and tables in Clojure, inspired by J and Q

    Clojure 27 2

  4. watir-robot watir-robot Public

    Remote keyword library for Robot Framework using Watir-WebDriver

    Ruby 15 5

  5. robot-remote-server-rb robot-remote-server-rb Public

    Ruby gem of Robot Framework remote server

    Ruby 11 3

  6. gershwin gershwin Public

    (Deprecated Prototype) Gershwin programming language

    Java 10