yhara.jp

Recent Posts


2018年12月

2019-01-05
Diary

2018年最後の近況です。

アドカレ

12月はアドベントカレンダーの季節ということで、今年は主にOpalアドカレに記事を書いていた。こういうのとか。

それ以外の記事は以下。

(more...)


altjsにおけるstdinの実装:BiwaSchemeのreadの例

2018-12-18
Tech

この記事は言語実装 Advent Calendar 2018の18日目の記事です。昨日の記事はC(のサブセット)コンパイラを書く上でハマった点:配列編 - hsjoihs’s diaryでした。

最近、BiwaScheme公式サイトのREPLでread関数が使えるようになったので、その解説をします。(read)は標準入力からS式を同期的に読み込むのですが、JavaScriptでキー入力を処理しようとすると必ず非同期処理になるので、readのようなものを実装するには工夫が必要です。

本稿ではaltjs1上に同期的なsleepやreadを実装する方法について解説します。

altjsとsleep


  1. 死語になりかけてる気もしますが、alternative javascript(代替JavaScript)の略で、本稿ではJavaScriptで実装された言語処理系のことを指します(コンパイラかインタプリタかは問わない)。 

(more...)


2018年11月

2018-12-06
Diary

近況です。

ydash

今月はrackやnokogiriなどのsecurity updateがあったが、自作のプロジェクトが増えてどれが引っかかったのか把握するのが大変になってきたので、簡単なダッシュボードアプリを作った。

Sinatraを使うとこういうのがさくっと作れて楽しい。ソースは https://github.com/yhara/ydash に置いてある。チェックにはbundler-auditを使っている。

(more...)


CHANGELOGからgitコミットログを自動生成する

2018-11-10
Tech

最近はどのプロジェクトもCHANGELOG.mdを書くようにしているのだが、CHANGELOGとコミットログは基本的に同じ内容になるので、手間を省くために自動で記入するようにしてみた。

手順

以下を.git/hooks/prepare-commit-msgという名前で保存してchmod +xする。

#!/usr/bin/env ruby
CHANGELOG_PATH = "./CHANGELOG.md"

(more...)

2018年10月

2018-11-04
Diary

Halite-III

少し前に記事にしたが、今月はHaliteというAIコンテストで遊んでいた。言語はいろいろ選べるが僕はRubyでやってる。AIプログラムを書いて送ると他の人との対戦が始まって、ブラウザ上で動いてるところが見えるというやつで、無限に時間が潰せそうでやばい。

一時は100位以内まで上がったけど、今は拠点周りの挙動を改善しようとしてスコアが落ちている。こればっかりやってても何だなと思うけど、開催期間が来年1月まであるので、気が向いたら直すかも。

AtCoder

(more...)

Posts

(more...)

Articles

(more...)

Category

Ads

About

About the author