let is just an expression and akin to a function!
let greeting = hello
let greeting = "hi"; /* shadowed */
let scoped = {
| { pkgs, config, lib, ... }: | |
| let | |
| packet-block-storage = | |
| pkgs.stdenv.mkDerivation { | |
| name = "packet-block-storage"; | |
| src = pkgs.fetchFromGitHub { | |
| owner = "packethost"; | |
| repo = "packet-block-storage"; | |
| rev = "4be27cbca7a924b4de7af059d5ac30c2aa5c9e6f"; |
let is just an expression and akin to a function!
let greeting = hello
let greeting = "hi"; /* shadowed */
let scoped = {
| Not a pretty sight | |
| When the web dies screaming loud | |
| The site is not found. | |
| Morning and sorrow | |
| 404 not with us now | |
| Lost to paradise. | |
| We're going to take a look at an alternative way to define a Zipper Comonad | |
| over a data type. Typically one would define a Zipper Comonad by defining a new | |
| datatype which represents the Zipper; then implementing `duplicate` and | |
| `extract` for it. `extract` is typically straightforward to write, but I've had | |
| some serious trouble writing `duplicate` for some more complex data-types like | |
| trees. | |
| We're looking at a different way of building a zipper, The advantages of this | |
| method are that we can build it up out of smaller instances piece by piece. | |
| Each piece is a easier to write, and we also gain several utility functions |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <keymap> | |
| <FullscreenVideo> | |
| <keyboard> | |
| <l mod="ctrl">AudioNextLanguage</l> | |
| </keyboard> | |
| </FullscreenVideo> | |
| <VideoMenu> | |
| <keyboard> | |
| <l mod="ctrl">AudioNextLanguage</l> |
| alias accio=wget | |
| alias avadaKedavra='rm -f' | |
| alias imperio=sudo | |
| alias priorIncantato='echo `history |tail -n2 |head -n1` | sed "s/[0-9]* //"' | |
| alias stupefy='sleep 5' | |
| alias wingardiumLeviosa=mv | |
| alias sonorus='set -v' | |
| alias quietus='set +v' |
| #!/bin/bash | |
| # | |
| # rotate_desktop.sh | |
| # | |
| # Rotates modern Linux desktop screen and input devices to match. Handy for | |
| # convertible notebooks. Call this script from panel launchers, keyboard | |
| # shortcuts, or touch gesture bindings (xSwipe, touchegg, etc.). | |
| # | |
| # Using transformation matrix bits taken from: | |
| # https://wiki.ubuntu.com/X/InputCoordinateTransformation |
| // Short module explanation // Something to gather my thoughts | |
| // // I think this looks cool. | |
| // | |
| module.exports = the_exported_function // Modules are a function. Always. | |
| // | |
| module.exports.extra = extra // Additional API entry points if | |
| module.exports.other = other // desired. | |
| // | |
| var util = require('util') // Other packages from npm or core | |
| var assert = require('assert') // No comma-first due to lots of |
| com -d "Delete duplicate tabs" tabcloseduplicates,tabclosed -js let seen={},vtabs=tabs.visibleTabs,i=vtabs.length;while(i--){let loc=vtabs[i].linkedBrowser.contentDocument.location.href||"";if(Object.prototype.hasOwnProperty.call(seen, loc)){config.tabbrowser.removeTab(vtabs[i]);}else{seen[loc]=true;}} |
| var user = { | |
| validateCredentials: function (username, password) { | |
| return ( | |
| (!(username += '') || username === '') ? { error: "No Username Given.", field: 'name' } | |
| : (!(username += '') || password === '') ? { error: "No Password Given.", field: 'pass' } | |
| : (username.length < 3) ? { error: "Username is less than 3 Characters.", field: 'name' } | |
| : (password.length < 4) ? { error: "Password is less than 4 Characters.", field: 'pass' } | |
| : (!/^([a-z0-9_-]+)$/i.test(username)) ? { error: "Username contains invalid characters.", field: 'name' } | |
| : false | |
| ); |