Skip to content

Instantly share code, notes, and snippets.

View ayu-mushi's full-sized avatar
💛

ayu-mushi ayu-mushi

💛
View GitHub Profile
{-# Language GADTs #-}
module Main where
import Control.Monad.Cont
data Proper = John | Mary -- Proper -> john | mary
data Det = A | The -- DET -> a | the
data N = Man | Woman -- N -> man | woman
data NP = NP0 Det N | NP1 Proper -- NP -> Det N | Proper
data VI = Sleeps | Walks -- VI -> sleeps | walks
data VT = Loves -- VT -> loves
@ayu-mushi
ayu-mushi / rpg.js
Created September 9, 2019 07:55
rpg.js
function makeZako(n){
return {hp: 20, mp:20, name:"zako" + n};
}
var enemies = [makeZako(0), makeZako(1), makeZako(2), makeZako(3)];
var player = {hp: 20, mp:20, name:"yuusya"};
@ayu-mushi
ayu-mushi / issei_attack.js
Created September 9, 2019 07:59
issei_attack
function Maou(){
this.hp = 100;
this.name = "魔王";
}
Maou.prototype.attack = function(aite) {
// 魔王の攻撃
alert(aite + "に魔王が二重攻撃!!");
};
function Cribou(){
@ayu-mushi
ayu-mushi / population-processing.hs
Created November 14, 2019 14:36
population-processing
{-# LANGUAGE TupleSections #-}
module Lib
( someFunc
) where
import Text.Parsec
import System.IO
import Data.List
import Graphics.Gnuplot.Simple
import Control.Monad.Reader
@ayu-mushi
ayu-mushi / main.elm
Created December 20, 2019 10:32
Elm canvas alife template
module Main exposing (main)
import Browser
import Browser.Events exposing (onAnimationFrameDelta)
import Canvas exposing (rect, shapes)
import Canvas.Settings exposing (fill)
import Canvas.Settings.Advanced exposing (rotate, transform, translate)
import Color
import Html exposing (Html, div)
import Html.Attributes exposing (style)
@ayu-mushi
ayu-mushi / eq.v
Last active February 1, 2020 08:37
Haskell Road to Logic, Math, Programming 演習3.5
From mathcomp Require Import all_ssreflect.
Set Implicit Arguments.
Lemma eq (p q r : Prop): (p <-> q) -> ((p -> r) <-> (q -> r)).
Proof.
move => [pq qp].
split.
move => pr q0.
apply pr.
apply qp.
@ayu-mushi
ayu-mushi / abc162_d.hs
Created April 13, 2020 06:18
abc162_d の間違った(TLEする)実装
import Data.Monoid (Sum(Sum))
-- i をインクリメントする処理を分離できないか
--https://atcoder.jp/contests/abc162/tasks/abc162_d の間違った(TLEする)実装
syouhi0 :: (Monoid m, Eq a) => Int -> (Int -> Int -> Int -> m) -> [a] -> m
syouhi0 i f [x,y] = mempty
syouhi0 i f (x:xs) = (syouhi1 (i+1) (f i) 0 x xs) `mappend` (syouhi0 (i+1) f xs)
syouhi1 :: (Monoid m, Eq a) => Int -> (Int -> Int -> m) -> Int -> a -> [a] -> m
@ayu-mushi
ayu-mushi / night_owl.py
Last active July 8, 2021 13:27
起床時刻を入力するとご飯の時間や就寝時間を教えてくれるスクリプト
from datetime import datetime
#print(datetime.now().time().second)
kisyo = int(input("起床時刻: "))
# 朝ご飯
print("朝ご飯:",(kisyo+1)%24, "時")
@ayu-mushi
ayu-mushi / disable-device-as-wakeup.service
Last active July 22, 2021 14:11
Ubuntuでsuspendしても自動で復帰してしまうのを抑止する https://dothiko.hatenablog.com/entry/2014/04/23/201923
[Unit]
Description=Disable devices as wakeup
[Service]
ExecStart=/usr/local/bin/disable_auto_resume_of_suspend.sh
Type=oneshot
[Install]
WantedBy=multi-user.target
@ayu-mushi
ayu-mushi / hateinfo.py
Last active July 22, 2021 16:14
URLを受けとってはてなブックマークの情報を返す
#!/usr/bin/env python2
# -*- coding: utf-8- -*-
# URLを受けとってはてなブックマークの情報を返す
import urllib2
import argparse
import json
def bukome(args):