I hereby claim:
- I am crabmusket on github.
- I am crabmusket (https://keybase.io/crabmusket) on keybase.
- I have a public key ASC8gXuUziw0CsDZ1i5l0XQoHZmIdciVmtULjMDwc5qeowo
To claim this, I am signing this object:
-- http://hackage.haskell.org/package/atom | |
-- http://hackage.haskell.org/package/atom-msp430 | |
module Main where | |
import Data.Word | |
import Data.Bits | |
import Language.Atom.MSP430 | |
main = mspCompile "g2231" $ mspProgram { |
import Control.Monad (forever) | |
import Control.Concurrent (forkIO, killThread) | |
import qualified Data.ByteString.Char8 as B | |
import System.Hardware.Serialport | |
(openSerial, recv, closeSerial, defaultSerialSettings) | |
port = "COM1" -- Windows | |
--port = "/dev/ttyUSB0" -- Unix | |
main = do |
-- Imports for serial port | |
import qualified Data.ByteString.Char8 as B | |
import System.Hardware.Serialport | |
(openSerial, recv, closeSerial, defaultSerialSettings) | |
-- Imports for threading and stuff | |
import Control.Monad (void, forever, mapM_) | |
import Control.Concurrent (forkIO, killThread) | |
import Control.Concurrent.Chan | |
(Chan, newChan, dupChan, writeChan, getChanContents) |
import qualified Data.ByteString.Char8 as B | |
import System.Hardware.Serialport (SerialPort, recv) | |
recvLn :: SerialPort -> IO B.ByteString | |
recvLn s = do | |
-- Receive one byte at a time. | |
first <- recv s 1 | |
rest <- if first == B.singleton '\n' | |
then return $ B.empty | |
else recvLn s |
import qualified Data.ByteString.Char8 as B | |
import Criterion.Main | |
import Data.IORef | |
import Data.Vector | |
import Data.ByteString.Char8 (ByteString) | |
import Control.Monad (forever) | |
import Pipes | |
import qualified Pipes.Prelude as P | |
import Data.Char (intToDigit) | |
import qualified Data.ByteString.Builder as Builder |
module Numeric.Units.Dimensional.ConstantArithmetic where | |
import qualified Prelude | |
import qualified Numeric.Units.Dimensional | |
import Numeric.Units.Dimensional.Prelude | |
a *. b = a * (b *~ one) | |
a .* b = (a *~ one) * b | |
a .*. b = (a *~ one) * (b *~ one) |
import Numeric.LinearAlgebra | |
import Control.Monad (replicateM) | |
import System.Random (randomIO) | |
import Graphics.Gnuplot.Simple (plotFunc) | |
-- Test 100 random lines for convexity. | |
main = replicateM 100 $ do | |
-- Two 5x5 symmetric positive definite matrices that determine the line. | |
a <- randomSnPD 5 | |
v <- randomSnPD 5 |
I hereby claim:
To claim this, I am signing this object:
$md-col-red-50: #ffebee; | |
$md-col-red-100: #ffcdd2; | |
$md-col-red-200: #ef9a9a; | |
$md-col-red-300: #e57373; | |
$md-col-red-400: #ef5350; | |
$md-col-red-500: #f44336; | |
$md-col-red-600: #e53935; | |
$md-col-red-700: #d32f2f; | |
$md-col-red-800: #c62828; | |
$md-col-red-900: #b71c1c; |
<!DOCTYPE html> | |
<meta charset="utf-8"> | |
<style> | |
text, label { | |
font-family: sans-serif; | |
} | |
label { | |
position: absolute; | |
text-align: center; |