c4se記:さっちゃんですよ☆

.。oO(さっちゃんですよヾ(〃l _ l)ノ゙☆)

.。oO(此のblogは、主に音樂考察Programmingに分類されますよ。ヾ(〃l _ l)ノ゙♬♪♡

音樂はSoundCloud等バラバラの場所に公開中です。申し訳ないがlinkをたどるなどして探してください。

考察は現在は主に此のblogで公表中です。

programmingは、GitHubで開発中です。

Python

Web front で ANTLR4 を使ひ DSL を作る (但し Python で書く)

世に parser generator や parser combinator が生まれてから兔角、文脈自由或いはそれに近い文法の構文解析器を作るのは簡單で、私も度々作ってきた。 PEG (Parsing Expression Grammar) が表現し易く好きでよく使ってゐた。PEG.js – Parser Generator for …

throw しない函數が吐く console.error を補足する

error が有るのにそれを console に吐くだけで throw しない不屆きな函數が有る。壊れた data で處理が進んでは困るから throw して貰ひたい。或いは error を UI 上に表示したいから catch したい。詰まり console に吐かれた error を捕捉して何かを行なひ…

Python で React Web front を書く

Web front は樂だ。UI が組み易い (だから皆 Electron を使ふのだ)。deploy & release し易い。そして今やどんな programming 言語ででも書ける。勿論 Python ででも書ける。 Transcrypt - Python in the browser - Lean, fast, open! Transcrypt は Python …

WSL でも macOS でも、Docker で開發する

もう WSL 2 も出ると云ふのに WSL 1 の話だが。 Python 3 で開發するとしやう。開發環境を Docker container に閉じ込めたい。と云ふのも Python の依存 library 管理は pip や Pipenv、Poetry と未だ固まってゐず、手元の環境は即座に捨てられるのが望まし…

XML を表現する時 XML の階層が表現する code にも表れて欲しい (Python)

偶々 Clojure で Atom を、Python で SVG を生成する機會が有った。どちらも XML だ。Python には標準でxml.etree.ElementTreeと云ふ class が含まれてゐて、これで XML を讀み書き出來る。 Clojure だと XML を生成するには、 (require '[clojure.xml :as x…

Clojure で task runner を書く

度々簡易な task runner を書いてゐる。いつもは Makefile を使ってゐて、makeと打つだけで何をするべきか思ひ出せるやうにしてある。例へば、 .PHONY: help help: @awk -F':.*##' '/^[-_a-zA-Z0-9]+:.*##/{printf"%-16s\t%s\n",$$1,$$2}' $(MAKEFILE_LIST) …

DynamoDBで楽観的lockを行なふ

DynamoDB にはトランザクションは無いしロック等無い。RDS 使へ。好い加減にしろ。 然し DynamoDB には魅力が在るし、少々トランザクション出來なからうが此れを使ひたいといふ欲求の在る場面もある。楽観的ロック位いは出來ないだらうか。 楽観的ロックと云…

Pythonのunittestを書かう。其れを自動実行しやう (rake test + guardを置き換へやう)

Pythonアプリケーション毎に環境を分ける (pyenv + virtualenv (or venv) + pip)の續きのやうなもの。 Ruby Python Lint Rubocop flake8 テスト RSpec unittest モック RSpec mock (or unittest.mock) 時間に依存したテスト Timecop (or ActiveSupport::Test…

Pythonアプリケーション毎に環境を分ける (pyenv + virtualenv (or venv) + pip)

Ruby では rbenv + Bundler でやる。Haskell では Stack で。Elixir では exenv + Hex で。Node.js では ndenv + npm で。PHP では phpenv + composer で。 API Gateway と Lambda の組み合はせでリリースするバージョンを制御する の樣に Lambda で色々やっ…

API GatewayとLambdaの組み合はせでリリースするバージョンを制御する

追記 20161018 Serverless Framework をお勧めします。1.0 が出ました。 Serverless Framework (1.0.0-beta2) が在ります - c4se 記:さっちゃんですよ ☆ サーバーレスって奴です。 API Gateway から Lambda を呼ぶ 此の節は前説なので、図だけ見つつ次の節…

反復諸法 - 繰り返し、イテレータ、再帰、(続く)

[.。oO(さっちゃんAdvent Calendar) : ATND http://atnd.org/events/22829 ]2日目 繰り返し programmingには繰り返しと云う実行構造が有ります。forとかwhileとかforeachとか。 # Python for i in range(12): print(i * 2) # Python i = 0 while i < 19: prin…

Pythonをちょっと使ってみた

Pythonをちょっと使ってみて。 インデント構文にも慣れてきたし、計算はPythonのライブラリは充実してますね。NumPyとかSciPyとかSimPyとか。Sageとか。 まず引数の括弧を省略して詰まる。def f xとかやってる。それはRubyだ。 defにもifにもコロンが要るの…