| 日時: | 2023-01-15 |
|---|---|
| 作: | @voluntas |
| バージョン: | 2023.1 |
| url: | https://voluntas.github.io/ |
この資料は以下の製品の宣伝を含みます。
| 日時: | 2023-01-15 |
|---|---|
| 作: | @voluntas |
| バージョン: | 2023.1 |
| url: | https://voluntas.github.io/ |
この資料は以下の製品の宣伝を含みます。
| # Place file in | |
| # /etc/NetworkManager/conf.d/90-disable-randomization.conf | |
| [device-mac-randomization] | |
| # "yes" is the default for scanning in Fedora 25 | |
| wifi.scan-rand-mac-address=no | |
| [connection-mac-randomization] | |
| ethernet.cloned-mac-address=random | |
| wifi.cloned-mac-address=random |
| import socket | |
| import random | |
| import argparse | |
| import sys | |
| from io import BytesIO | |
| # Referrer: https://github.com/wuyunfeng/Python-FastCGI-Client | |
| PY2 = True if sys.version_info.major == 2 else False |
(def x 1) default Var is static, using let for local Var, with-redefs to change the root binding var within its scope (visible in all threads).(def ^:dynamic x 1) dynamic Var, using binding to change value (thread-local, cannot be seen by any other thread).In example bellow:
binding only changes the value of *dynamic-var* within the scope of the binding expression| GNU ld (GNU Binutils for Ubuntu) 2.25.1 | |
| Supported emulations: | |
| elf_x86_64 | |
| elf32_x86_64 | |
| elf_i386 | |
| i386linux | |
| elf_l1om | |
| elf_k1om | |
| i386pep | |
| i386pe |
官方文档
其中PREFIX决定了所有缺省的路径
TMP_DIR = <prefix>/tmp
STAMP_DIR = <prefix>/src/<name>-stamp
DOWNLOAD_DIR = <prefix>/src
SOURCE_DIR = <prefix>/src/<name>
BINARY_DIR = <prefix>/src/<name>-build
INSTALL_DIR = <prefix>
Kinesis Freestyle (Terrible key switches. Mushy and un-lovable)
Kinesis Freestyle Edge (Traditional layout with too many keys, mech switches, proably too big to be tented easily/properly)
Matias Ergo Pro (Looks pretty great. Have not tried.)
ErgoDox Kit (Currently, my everyday keyboard. Can buy pre-assembled on eBay.)
ErgoDox EZ (Prolly the best option for most people.)
In most programming languages, most functions are synchronous: a call to the function does all of its business in the same thread of execution. For functions meant to retrieve data, this means the data can be returned by calls to the function.
For an asynchronous function, a call to the function triggers business in some other thread, and that business (usually) does not complete until after the call returns. An asynchronous function that retrieves data via another thread cannot directly return the data to the caller because the data is not necessarily ready by the time the function returns.
In a sense, asynchronous functions are infectious: if a function foo calls an asynchronous function to conclude its business, then foo itself is asynchronous. Once you rely upon an asynchronous function to do your work, you cannot somehow remove the asynchronicity.
When the business initiated by an asynchronous function completes, we may want to run some code in response, so the code run
: and not ::, and the consing operator conversely is :: instead of :where clauses, only let/in"""data corresponds to type in Elm, and also, Haskell's type corresponds to Elm's type alias($) is (<|), but you don't use it all that much – Elm people like the flipped operator (|>) which lets you build something that reads like a pipeline(|>)(.) is (<<), and a flipped version (>>) exists, but I don't see it used that much either(>>=) is not an available operator and would not be polymorphic (no typeclasses, see below), and is instead commonly named SomeType.andThen – e.g. Maybe.andThen : Maybe a -> (a -> Maybe b) -> Maybe b