Like this:
# Use absolute paths, since relative paths like ~/Projects won't be expanded.
# - deps ------------------------------------------------------------------
sudo port install ninja # or brew install ninja
cargo install xargo
| vm_name = File.basename(Dir.getwd) | |
| Vagrant.configure("2") do |config| | |
| config.vm.box = "bento/ubuntu-24.04" | |
| # Sync Documents folder to /agent-workspace | |
| config.vm.synced_folder "~/Documents/agent-workspace", "/agent-workspace", type: "virtualbox" | |
| config.vm.provision "file", source: "~/.claude.json", destination: "/home/vagrant/.claude.json" | |
| config.vm.provision "file", source: "~/.config/gh", destination: "/home/vagrant/.config/gh" |
| ; Introduction to Clojure | |
| ; ======================= | |
| ; This note teaches you the entire syntax of Clojure in ~15 minutes. | |
| ; Clojure is a Lisp (short for LISt Processing) | |
| ; Lisp was invented in the 60s by John McCarthy and pionereed a number of ideas that are now | |
| ; commonplace in computer science, including: | |
| ; - tree data structures, |
| (defn bubble-sort-step [coll] | |
| (if-not (seq coll) | |
| coll | |
| (let [[a b & rst] coll] | |
| (if-not b | |
| coll | |
| (lazy-seq | |
| (cons (min a b) | |
| (bubble-sort-step (cons (max a b) rst)))))))) |
| (ns ui.map | |
| #?(:cljs (:require-macros [ui.map :refer [with-reagent]])) | |
| (:require [hyperfiddle.electric :as e] | |
| [hyperfiddle.electric-dom2 :as dom] | |
| [reagent.core :as r] | |
| #?(:cljs ["react" :as React]) | |
| #?(:cljs ["react-dom/client" :as ReactDom]) | |
| #?(:cljs ["react-map-gl" :as ReactMapGl]) | |
| #?(:cljs ["@mapbox/mapbox-gl-draw" :as MapboxDraw]))) |
| // Welcome to Code in Framer | |
| // Get Started: https://www.framer.com/docs/guides/ | |
| import Example from "https://framer.com/m/framer/Example.js@^1.0.0" | |
| import { Map, InfoWindow, Marker, GoogleApiWrapper } from "google-maps-react" | |
| const YOUR_GOOGLE_API_KEY_GOES_HERE = "<your API keys goes here>" | |
| const MapContainer = (props) => { |
| FROM clojure:openjdk-15-tools-deps AS builder | |
| WORKDIR /opt | |
| ADD deps.edn deps.edn | |
| RUN clj -Sdeps '{:mvn/local-repo "./.m2/repository"}' -e "(prn \"Downloading deps\")" | |
| RUN clj -e :ok | |
| COPY . . | |
| RUN clj -e :ok |
| (ns luandro) | |
| (even? 3) | |
| (apply + (filter even? (range 20))) | |
| (->> (range 20) | |
| (filter even?) |
| (defn left-pad | |
| "Left-pads inputs with prefix up to length n (just in case String.padStart stops working one day)." | |
| [n prefix input] | |
| (let [s (str input)] | |
| (str (string/join "" (repeat (- n (.-length s)) prefix)) s))) |
| (defn binary-search | |
| "Finds a value in a sorted seq in log(N) time." | |
| [coll target] | |
| (if (seq coll) | |
| (let [half (int (/ (count coll) 2)) | |
| pivot (nth coll half nil)] | |
| (if (= pivot target) | |
| pivot | |
| (if (< target pivot) | |
| (binary-search (take half coll) target) |
Like this:
# Use absolute paths, since relative paths like ~/Projects won't be expanded.
# - deps ------------------------------------------------------------------
sudo port install ninja # or brew install ninja
cargo install xargo