View typesafe-ast-nodes.ts
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
enum ShapeKind { | |
Circle, | |
Rectangle, | |
Square | |
} | |
type Shape = | |
| Circle | |
| Rectangle | |
| Square |
View blinks-custom.zsh-theme.zsh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# custom based on https://github.com/blinks zsh theme | |
# see http://zsh.sourceforge.net/Doc/Release/Prompt-Expansion.html | |
_BOLD='%{%B%}' | |
_UNBOLD='%{%b%}' | |
_BKG="%{%K{${bkg}}%}" | |
_FG () { echo "%{%F{$1}%}" } | |
_UNBKG='%{%k%}' | |
_UNFKG='%{%f%}' | |
_UNSET="$_UNBKG$_UNFKG$_UNBOLD" |
View github-tab-fix.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ==UserScript== | |
// @name Github Code Tab-Size Fix | |
// @version 0.1 | |
// @description Sets a reasonably tab-size to make code using tabs a bit more readible | |
// @match https://github.com/* | |
// @run-at document-start | |
// ==/UserScript== | |
function addGlobalStyle(css) { | |
var head, style; |
View lalex_grammar.pegjs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Some expressions are from the JavaScript example grammar (which is very useful) | |
// https://github.com/pegjs/pegjs/blob/master/examples/javascript.pegjs | |
Program | |
= Statement+ | |
Statement "statement" | |
= Expression | |
/ Comment |
View static_type_inference.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// `@foo` is a symbol that can be treated as a type or a value | |
// `a :: T` is a forward type declaration where value `a` is of type `T` | |
// I'm using this for mainly for explanatory purposes to show what structural | |
// type inference might allow for | |
// `<'x>` declares a type variable `'x` | |
// I've prefixed the type variables with an apostrophe to make clear what is a | |
// regular type and what a type variable is (borrowing from F#/OCaml notation) |
View nominal_and_structural.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
alias Named = { name: string } | |
// same as `type City = { name: string }` | |
// the structural type on the rhs will get "tagged" by the name on the lhs so | |
// that the original structural type becomes a nominal type | |
// | |
type City = Named | |
type State = Named |
View HoverExample.scala
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class HoverComponent extends Component { | |
// "Leaked" implementation detail of our `HoverSystem` | |
var time: Float | |
} | |
class PositionComponent extends Component { | |
var x: Float | |
var y: Float | |
} |