Skip to content

Instantly share code, notes, and snippets.

View risgk's full-sized avatar

Ryo Ishigaki risgk

View GitHub Profile
@y-taka-23
y-taka-23 / coq_uniq.v
Created September 12, 2015 06:31
An Implementation of the uniq Command Certified by Coq
Parameter A : Type.
Parameter beq_A : A -> A -> bool.
Section Uniq.
Require Import Arith List.
Hypothesis beq_A_true : forall x y : A,
beq_A x y = true -> x = y.
Hypothesis beq_A_false : forall x y : A,
@imjasonh
imjasonh / markdown.css
Last active February 12, 2024 17:18
Render Markdown as unrendered Markdown (see http://jsbin.com/huwosomawo)
* {
font-size: 12pt;
font-family: monospace;
font-weight: normal;
font-style: normal;
text-decoration: none;
color: black;
cursor: default;
}
@pocketberserker
pocketberserker / FreeMonad.md
Last active November 7, 2019 05:23
基礎から学ばないFree Monad

基礎から学ばないFree Monad

自己紹介

icon

  • なかやん・ゆーき / ぺんぎん / もみあげ
  • @pocketberserker / id:pocketberserker
@suchi
suchi / hanakotoba.txt
Last active September 26, 2020 02:36
uniqの花言葉は「君だけを」 〜 素敵なプログラム花言葉たち(1991/9/19)
Note 103 Junk & Test (junk.test)
[ BASENOTE with 36Res ]
Title:Test/kanbai: undel の花言葉は「もう一度やり直そう」
Bytes: 42 Date : 11:02am 9/19/91 Author:pcs29450 (kanbai-an)
undel の花言葉は「もう一度やり直そう」
// Copyright Akira Takahashi 2014
// Use, modification and distribution is subject to the Boost Software License,
// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)
#include <cstddef>
namespace my_stl {
template <class Iterator>
struct iterator_traits {
static typename Iterator::reference dereference(Iterator& it)
@pocketberserker
pocketberserker / output.txt
Last active March 20, 2016 01:23
http://www.paraiso-lang.org/ikmsm/books/c86.html の第4章の最初のほうが元ネタ
1
2
あぁ^~
4
こころが
あぁ^~
ぴょんぴょんするんじゃ^~
8
あぁ^~
こころが
@pocketberserker
pocketberserker / homo.fs
Last active September 13, 2015 04:05
コンピュテーション式でてきとーに日本語を使ってみる
type ホモビルダー() =
member __.Delay(f: unit -> _) = f
member __.Run(f) = f ()
member __.Yield(()) = ""
member __.Yield(x: string) = x
[<CustomOperation("攻め")>]
member inline __.攻め(_, case) = case
[<CustomOperation("受け")>]
member inline __.受け(source: string, case) = (source, case)
[<CustomOperation("┌(┌^o^)┐")>]
@yohhoy
yohhoy / gist:191757eaa0fe8dfa39e8
Last active August 29, 2015 14:06
Dead-lock demonstration with condition_variable::notify_one()/pthread_cond_signal()
//
// Dead-lock demonstration with condition_variable::notify_one()
//
#include <utility>
#include <mutex>
#include <condition_variable>
template<typename T>
class mt_slot {
T slot_;

原文はマーティンファウラーの記事です。

#マイクロサービスとSOA (Microservices and SOA)

マイクロサービスについて語る時によく言われるのが「へぇー、この考え方って10年ぐらい前に流行ったただのサービス指向アーキテクチャ(SOA)だよね、10年前に見たわー」だ。この目線からのツッコミにも利点はある。マイクロサービスのスタイルというものはSOA派の人たちが支持していたものとよく似ているからだ。でも問題はあって、SOAが意味するものはバラバラすぎて、「"SOA"と呼ばれている何か」がここで述べているスタイル(訳注:マイクロサービス)とはまるで違うなんてことがすごくよくある。そういう場合は往々にして、一枚岩なアプリケーション群をESBで統合することに主眼が置かれていたりする。

特に、サービス指向のいけてない実装はこれまでいくつもいくつも見てきた。複雑な部分をESBの中に押し込めようとして[7]何年も取り組んだけれども、何百万ドルも浪費して何の価値も提供できなかったとか、モデルに統制をかけて変更を積極的に抑制してしまい、問題点の向こう側にあるものを見えにくくしてしまったとか。

確かに、マイクロサービスのコミュニティで使われているテクニックの多くは、大きな組織の中でサービスを統合してきた開発者たちが、その経験の中から育んできたものだ。「読み取る側は寛容に(Tolerant Reader)」パターンはその好例だ。Webを活用するという取り組みがなされていて、単純なプロトコルを使うというアプローチはそういった経験をふまえている――中央集権的な規約を避ける反応だ。そういうものによって複雑さが生まれてしまうのは[正直言って息が詰まる](http://wiki.apache.org/ws/We

@voluntas
voluntas / shiguredo_mqtt_broker_log_summary.rst
Last active December 22, 2018 02:54
時雨堂 MQTT ブローカー開発ログまとめ

時雨堂 MQTT ブローカー開発ログまとめ

日時

2015-01-10

@voluntas

バージョン

0.3.4

url

http://voluntas.github.io/

注意