エクスプローラーのアドレス部分に ftp://download.ks.prv
を打ち込む。
mirror
> texlive
> tlnet
を開く。
install-tl-windows.exe
をデスクトップにコピーする。
(ブラウザーで ftp://download.ks.prv/mirror/texlive/tlnet
を開いて、 install-tl-windows.exe
をダウンロードするのでも良い。)
{-# LANGUAGE MagicHash #-} | |
module Main where | |
import Data.IORef | |
import Control.Monad (forM_) | |
import System.Environment (getArgs) | |
import Control.Monad.State.Class | |
import qualified Control.Monad.State.Strict as StateStrict | |
import qualified Control.Monad.State.Lazy as StateLazy | |
import Control.Monad.Writer.Strict as WriterStrict | |
import GHC.Prim |
// dumparg.c | |
#include <stdio.h> | |
#include <wchar.h> | |
int wmain(int argc, const wchar_t *argv[]) | |
{ | |
for (int i = 0; i < argc; ++i) { | |
const wchar_t *s = argv[i]; | |
printf("argv[%d] = ", i); | |
while (*s != 0) { | |
if (*s < 0x80 && isprint(*s)) { |
{-# LANGUAGE BangPatterns #-} | |
import Gauge.Main | |
import Control.Monad | |
import Control.Monad.State.Strict | |
import Data.IORef | |
import qualified Data.Vector.Unboxed.Mutable as V | |
import Data.Primitive.MutVar | |
{- | |
benchmarked vector |
benchmarked trial division (2)/1000 | |
time 337.3 μs (333.0 μs .. 342.5 μs) | |
0.996 R² (0.987 R² .. 0.999 R²) | |
mean 344.1 μs (339.5 μs .. 353.6 μs) | |
std dev 22.82 μs (7.337 μs .. 41.88 μs) | |
variance introduced by outliers: 42% (moderately inflated) | |
benchmarked trial division (2)/10000 | |
time 22.05 ms (21.57 ms .. 22.77 ms) | |
0.996 R² (0.989 R² .. 0.999 R²) |
local PDF_DIR = ".converted-pdf" | |
os.execute("mkdir -p " .. PDF_DIR) | |
local function file_exists(fn) | |
local f = io.open(fn,"r") | |
if f then | |
f:close() | |
return true | |
else | |
return false |
module Main where | |
import Prelude | |
import Data.HeytingAlgebra | |
import Effect (Effect) | |
import Effect.Console (log) | |
foo :: forall a. HeytingAlgebra a => Unit -> a | |
foo x = foo x |
{-# LANGUAGE RankNTypes #-} | |
{-# LANGUAGE GADTs #-} | |
{-# LANGUAGE FlexibleInstances #-} | |
{-# LANGUAGE IncoherentInstances #-} -- これがないとエラーになる(この拡張はかなりやばい) | |
import Data.List | |
class MyShow a where | |
myShow :: a -> String | |
instance MyShow Int where myShow = show |
#!/usr/bin/env stack | |
-- stack --resolver lts-14.15 script --package reflection | |
{-# LANGUAGE DataKinds, RankNTypes, TypeOperators, TypeFamilies, ScopedTypeVariables, TypeApplications #-} | |
import GHC.TypeNats | |
import Data.Type.Equality | |
import Unsafe.Coerce | |
import Data.Proxy | |
import Data.Reflection | |
cmpNat :: (KnownNat a, KnownNat b) |
{-# LANGUAGE DataKinds #-} | |
{-# LANGUAGE TypeFamilies #-} | |
import Unboxable | |
import Mod | |
import Data.Coerce | |
-- Defining Unboxable instance is as good as exporting the data constructor! | |
castUnboxable :: Unboxable a => Rep a -> a | |
castUnboxable = coerce |