start new:
tmux
start new with session name:
tmux new -s myname
(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
https://gist.github.com/ljharb/58faf1cfcb4e6808f74aae4ef7944cff
While attempting to explain JavaScript's reduce method on arrays, conceptually, I came up with the following - hopefully it's helpful; happy to tweak it if anyone has suggestions.
JavaScript Arrays have lots of built in methods on their prototype. Some of them mutate - ie, they change the underlying array in-place. Luckily, most of them do not - they instead return an entirely distinct array. Since arrays are conceptually a contiguous list of items, it helps code clarity and maintainability a lot to be able to operate on them in a "functional" way. (I'll also insist on referring to an array as a "list" - although in some languages, List is a native data type, in JS and this post, I'm referring to the concept. Everywhere I use the word "list" you can assume I'm talking about a JS Array) This means, to perform a single operation on the list as a whole ("atomically"), and to return a new list - thus making it mu
| require 'fiber' | |
| module Clock | |
| DEFAULT_SECONDS = 4 | |
| module_function | |
| def run seconds: DEFAULT_SECONDS | |
| timer.resume tick, tock, seconds: seconds | |
| end |
| class Xco | |
| attr_accessor :reaper | |
| def initialize | |
| @reaper = Automaton.new self | |
| @reaper.start | |
| end | |
| class Automaton | |
| def initialize(source, function: :reap, interval: 1) |
| require_relative 'tuple_space' | |
| class Cache | |
| def initialize | |
| @memory = TupleSpace.new(reaper_period_in_secs: 10, expires_in_secs: 60) | |
| end | |
| def get(request) | |
| @memory[request] | |
| end |
| COUNTRY_LETTERS = 'A'.upto('Z').with_index(127462).to_h.freeze | |
| def country_emoji(iso) | |
| COUNTRY_LETTERS.values_at(*iso.chars).pack('U*') | |
| end | |
| country_emoji('GB') | |
| #=> "🇬🇧" |