無精・短気・傲慢

perlの事 いろいろ

位置情報を取得(Geolocation API)

JavaScriptで位置情報を取得 Webブラウザのgeolocationオブジェクトを使うと、JavaScriptで現在位置(緯度/経度/高度と移動中なら速度/方向)を取得することができます。サンプルを作ってみました。最初に位置情報を取得する許可を求められます。 geoloca…

schedule book

スケジュール帳 スケジュール帳を追加(github) 実装してみた

WSLのvimでクリップボードを使う

windowsではXserverが無い為?にWSLのvimではクリップボードを共有する事が出来ません。Xserverを導入することでクリップボードを共有できる事を『WSL上のvimでクリップボードを共有する方法』で教えてもらいました。 windowsにXserverを導入する ここ(VcXs…

カレンダー表示

カレンダー表示を追加(github) 実装してみた SOURCE menu.pm sub panel_content{ my $s = shift; my $m = $s->app->model; my $text = <<END_SCRIPT <pre> @{[`date +"%a %b %d %Y"`]} @{[$m->make_cal($m->today())]} </pre> END_SCRIPT } model.pm sub make_days{ my ($s,$y,$m,$d…

ツェラーの公式(Zeller's congruence):曜日計算

ツェラーの公式(ツェラーのこうしき、英: Zeller's congruence)とは西暦(グレゴリオ暦またはユリウス暦)の年・月・日から、その日が何曜日であるかを算出する公式である。クリスティアン・ツェラー (Christian Zeller) が考案した。ユリウス通日を求め、…

春分の日・秋分の日

春分の日・秋分の日は前年に決まる 「春分の日」及び「秋分の日」については、国立天文台が、毎年2月に翌年の「春分の日」、「秋分の日」を官報で公表しています。 春分の日・秋分の日を求める 公転時の誤差によって日にちの確定ができない春分の日ですが、…

閉じれる半透明のパネル

半透明のパネルを追加 [html] <div id="overlay" class="content"> <div class="inner"> @{[$s->panel_content()]} <div id="panel" class="panel hide"></div> </div> </div> [css] .content{ position:absolute; top: 375px; left:0px; width:60%; min-width:315px; display:none; z-index:100; } .inner{ padding:10px; background…

rwt - 作表検索条件入力画面を追加

作表検索条件入力画面を追加 メニュー登録時に帳票作成時の範囲指定の入力を設定できる機能を追加 github 条件入力画面 メニュー登録 条件入力画面 メニューメンテ メニュー区分に"select"を設定 memoに検索項目を設定

パスフレーズの入力内容を確認出来る様にする

パスワードからパスフレーズへ あのパスワード規則、実は失敗作だった数字・記号・大文字の組み合わせ、2003年に考案した人物が後悔しているらしい。 パスワードのルールは間違いだった 「NISTスペシャルパブリケーション800-63」は今年2017年6月に全面改定 …

セッションとユーザー紐づけ

mojoliciusでセッションとユーザーを紐づけしてみた セッションとユーザーを紐づけ (github) LOGIN画面で認証したユーザーをセッションと紐づけてDBに登録しクッキーに保存したセッションにて以降の画面でユーザーを認識する。 セッションが有効で無い時は認…

中置記法から抽象構文木(AST)変換し後置記法(逆ポーランド記法)の計算

吉祥寺.pm #20 へ行ってきた 東京に出張に来ていたので2019/11/22吉祥寺.pm #20へ行ってきた。色々と刺激を受けた。発表のなかで、めもりー(@m3m0r7)さんの『PHP で AST 解析して Java の中間コードを生成する』に刺激を受けて、中置記法から抽象構文木(AS…

mojoliciousでユーザー認証

LOGIN画面を追加 ログイン画面 https://github.com/john-smith-7701/mmt mmt.pm Router認証処理を追加する。underで各処理の前に認証済みの確認処理を追加。認証を必要としない処理は元々のRouterを使う。 --- a/toolmmt/lib/Tool/mmt.pm +++ b/toolmmt/lib/…

じゃんけん判定

じゃんけん勝敗判定アルゴリズム 二人でじゃんけん ($a - $b + 3) % 3 複数人でじゃんけん $r |= 1 << $a じゃんけんの勝敗なんて考えた事なかった。二人でじゃんけんを行った時の「グー」、「チョキ」、「パー」の9通りの組み合わせで、「勝ち」、「負け」…

perl de Heptagon (七角形)

七角形を描画 編集 とりあえず描画してみる #!/usr/bin/env perl use Mojolicious::Lite; app->types->type(data => 'application/octet-stream'); app->types->type(mem => 'application/octet-stream'); app->types->type(wasm => 'application/wasm'); ge…

WebPerl

Welcome to WebPerl! 欲しかったやつ!!javascriptをperlで置き換えられる。 https://webperl.zero-g.net/ WebPerl uses the power of WebAssembly and Emscripten to let you run Perl 5 in the browser! WebPerl does not translate your Perl code to Ja…

B-TREE

B-TREEの考察 B-TREEを理解する為にviz3/btree.c(c)をperlに写経してみた。とりえず動く物を作ってから考えようと。【デモ】←クリック sub btree{ my $s = shift; $s->M(int(rand(8)+2)); $s->debugtext($s->debugtext . " (M:" . $s->M . ")"); $s->insert(…

B-TREE

B-TREEの考察 B-TREEを理解する為にviz3/btree.c(c)をperlに写経してみた。とりえず動く物を作ってから考えようと。【デモ】←クリック sub btree{ my $s = shift; $s->M(int(rand(8)+2)); $s->debugtext($s->debugtext . " (M:" . $s->M . ")"); $s->insert(…

chabo - AI(Artificial incompetence)

リファクタ 編集 cgiのチャボをmojoliciousのモジュールに作り直した。サーバーサイドとフロントエンドを完全に分離しコードをスッキリ?させた。 旧 新 チャボは入力文字列より単語を抽出しその単語よりマルコフ連鎖で文章を作成し出力する。 mecab 編集 日…

JSONP

JSONP JSONは情報をやり取りする際のフォーマットとして頻繁に使われるようになりました。 ただ、外部サービスと通信する際に、AjaxでJSONをやり取りするには「クロスドメイン」という壁があります。つまり、他ドメインに属するファイルはAjaxでは基本的に取…

mojolicious memo

perl WAF Mojolicious(モジョリシャス)はperl製のWebアプリケーションフレームワークです。2つのウェブサーバが同梱されていてmojoliciousだけセットアップすれはwebを開発、公開できます。1つはmorbo (モーボ)で開発用のサーバーです。起動しっぱなしでも…

中置記法から後置記法(逆ポーランド記法)への変換と計算

Calculation and conversion to postfix notation (Reverse Polish Notation) from infix notation perlでは入力内容をevalすれば良いだけだけどアルゴリズム(algorithm)の備忘録として書いてみた。 使い方 $ perl calc.pl "((1+5)*(-2+-3) * -1)**2 % 8" 4$…

github

2016/01/23 githubはじめました。まだよく解りません。mmtを登録してみました。 https://github.com/john-smith-7701/ https://github.com/john-smith-7701/mmt ソースをwikiに貼る作業が煩わしいのでgithubに登録してみました。

mmt -- Master Maintenance Tool perl module.

目的 mmt.pmをmojoliciousで書き直す。 apache無しでmojoliciousたけで動かす。(apache,psgi,等々で動かしても良いが…) utf-8をデフォルトにする。 prototype.jsからjQueryに移行する。 github https://github.com/john-smith-7701/mmt に登録した。 memo …

gitbash

gitbash これだけあればwindowsを使うのが楽しくなる。 ここhttps://git-for-windows.github.io/からダウンロード gitは使わないが(まだ)これをインストールすればwindowsでbash,vim,perlが使える。windowsで*nixLIKEのオペレーションが… 日本語の設定 .pr…

gitbash

gitbash 編集 これだけあればwindowsを使うのが楽しくなる。 ここhttps://git-for-windows.github.io/からダウンロード gitは使わないが(まだ)これをインストールすればwindowsでbash,vim,perlが使える。windowsで*nixLIKEのオペレーションが… 日本語の設…

YAPC Asia TOKYO 2015

夏だ!祭だ!YAPC::Asia What is YAPC? 世界最大のYAPCが最後の大花火をぶちあげに今年ももどってきました!YAPCはYet Another Perl Conferenceの略で、Perlに関するカンファレンス・・・いや、お祭りです!Perlだけに限らず、様々な分野のギーク達が集まり…

飛び出せPerl6

飛び出せperl6 アスキーでステレオグラム。ワンライナーで『パール6』を浮き出させる。いまいち飛び出ないか…。もっとガンガレ… $ perl6 -e 'sub MAIN($x,$y){ for 1..10 -> $i { for 1..7 -> $j { print ($i==9 and $j==6)??"$y "!!"$x ";}; print "\n";}}'…

多項式の因数分解(factorization)

高校の数学の本を元にアルゴリズム(algorithm)の備忘録として 使い方 $ perl factor.pl '8x^3+12x^2-2x-3' (2x-1)(2x+1)(2x+3) $ perl factor.pl ' x^4+x^2+1 ' (x^2+x+1)(x^2-x+1) $ 【計算】 [factor.pl] $str = shift || ' 8x^3+12x^2-2x-3 '; #<----- $s…

perl6 memo

array etc.. 編集 $ perl6 -e 'say ("a".."z")[5]' f $ perl6 -e 'say first-index { $_ > 5 }, (1..10)' 5 $ perl6 -e 'say [+] 1..10' 55 $ perl6 -e 'say join ",", 1..10 ' 1,2,3,4,5,6,7,8,9,10 $ perl6 -e 'for 1..10 -> $x {say "[$x]";}' [1] [2] [3…

PERL6

「ラブ・ストーリーは突然に」 編集 突然、PERL6(パールシックス)が気になってきた。今年(2015)はラリーからのクリスマスプレゼントがあるらしい(わくわく) [wikipediaより] 言語仕様は現在のPerl (Perl 5)と互換性がなく、既存のPerl 5のソフトウェアを…