Skip to content

Instantly share code, notes, and snippets.

View KisaragiEffective's full-sized avatar
🔇
sick

Kisaragi KisaragiEffective

🔇
sick
  • Some(_)
  • Hokkaido, Japan
View GitHub Profile
@KisaragiEffective
KisaragiEffective / 64bit_data_model.cpp
Created November 13, 2019 12:24
64ビットデータモデル
// This file is LICENSED WITH https://gist.github.com/KisaragiEffective/a0aba5fd0ed0ab7c5839a5cb3038b9bc
using namespace std;
#include <iostream>
#include <limits>
template <class T>
constexpr int bits(T t) {
return std::numeric_limits<T>::digits;
}
@KisaragiEffective
KisaragiEffective / 永遠にコンパイルが終わらない.kt
Created November 21, 2019 14:23
HList.size()の実装が悪い?
sealed class HList {
class Body<out A, out B : HList>(val head: A, val rest: B) : HList() {
}
object Tail : HList()
companion object {
fun <E1> of(e1: E1) = Body(e1, Tail)
"some string"
fun test() {}
"""triplet string"""
fun test2() {}
<program> ::= <statements>
<statements> ::= (<statement> <eol>)* <statement> <eol>
<statement> ::= <decl_var> | <decl_label> | <decl_def> | <for_statement> | <loop_statement> | <while_statement> | <if_statement> | <function_call> | <proc_call> | <assign>
<decl_var> ::= "VAR " <identifier> ("=" <expr>)?
<decl_label> ::= "@" ([A-Z] | [0-9] | "_")+
<decl_def> ::= ("COMMON ")? "DEF " <identifier> (" " <arguments> " " | "(" <arguments> ")") <eol> <statements> <eol> "END"
<for_statement> ::= "FOR " <var> "=" <expr> " TO " <expr> (" STEP " <expr>)? <eol> <statements> <eol> "NEXT" (" " <var>)?
<loop_statement> ::= "LOOP" <eol> <statements> <eol> "ENDLOOP"
<while_statement> ::= "WHILE " <expr> <eol> <statements> <eol> "WEND"
<if_statement> ::= <if_then_statement> | <if_then_else_statement>
@KisaragiEffective
KisaragiEffective / ほんとうに怖い。さくらのレンタルサーバー.md
Last active December 25, 2019 09:45
Archive of http://gyo.tc/1OATb ― オリジナルの権利は原稿を書いた方に帰属しています

さくらで専用サーバーを10年ほど利用しています。 単体のハードを利用するもので、外部からの操作はsshでログインすることしかできないものです。 作業時間を必死に捻出して、こつこつと長期間システムを開発して何とか動作するものを作り上げていました。

さくらのレンタルサーバーを利用することは、ほんとうに危険で怖いことだとおもいます。 自分が体験したトラブルをレンタルサーバーの利用を検討している方々に共有させていただきたく初めて記事を書いてみました。

二年ほど前、さくらさんが専有サーバーの場所を移動したいという申し出があり快く許可しました。その時のご説明では、場所を移動するだけでハードの変更は一切行いませんというもので、今まで通りの動作が保証される作業内容ということだったのです。

事前にスケジュールと作業分担を打ち合わせてから、こちらでリモートから電源オフを行いさくらに連絡して

// 3
const $false = ![];
// 4
const $true = !![];
// 6
const $undefined = [][[]]+[];
// 3
const $0 = +[];
// 3+3 -> 6
const $1 = +!+$0;

用語定義

  • セル: + 及び - で値を操作することができるもの。
  • 番地: < 及び > で前後させることができるもの。
  • 再帰的に適用可能: 最適化Aを適用したとしてもなお、最適化条件A' を満たすならば最適化A が適用できること。
  • 時間次数を下げる: 線形時間を定数時間に短縮すること。より一般には、次数の高い時間を次数の低い時間に短縮すること。

最適化手法

一般適用

  • +- | <> | -+ | ><: NOP
    • 組み合わせると互いに効果を打ち消し合う命令をなかったコトにする。
  • この規則は再帰的に適用可能である。
/*
http://www.patorjk.com/software/taag/#p=display&f=Blocks&t=SeichiAssist
.----------------. .----------------. .----------------. .----------------. .----------------. .----------------. .----------------. .----------------. .----------------. .----------------. .----------------. .----------------.
| .--------------. || .--------------. || .--------------. || .--------------. || .--------------. || .--------------. || .--------------. || .--------------. || .--------------. || .--------------. || .--------------. || .--------------. |
| | _______ | || | _________ | || | _____ | || | ______ | || | ____ ____ | || | _____ | || | __ | || | _______ | || | _______ | || | _____ | || | _______ | || | _________ | |
| | / ___ | | || | |_ ___ | | || | |_ _| | || | .' ___ | | || | |_ || _| | || | |_ _| | || | / \ | || | / ___ | | || | / ___ | | || | |_ _| | || | / ___ | | || | |

アイテムトランザクション

  • アイテムの電子的な転送を取り扱う

やること

  • プレイヤー→マインスタックの転送 [1]
  • マインスタック→プレイヤーの転送 [1]
  • マインスタック→マインスタックの転送 [2]
  • プレイヤー→プレイヤーの転送 [3]

備考