[
ホームに戻る
] [
スレッド一覧
] [
新規投稿
] [
留意事項
] [
ワード検索
] [
管理用
] [
過去ログ
]
記事閲覧
◆ スレッド全体を投稿順に表示
逆順に表示
スレッド3: Forum Patio の PHP 化についての諸課題
No.0: Perl から PHP へのスクリプト自動変換について
←返信
←引用して返信
日時: 2022/08/31 11:03
名前:
ナオヤM
ID:v0vXUs8A
参照:
https://viola.vmorita.com/bbs/patio/forum.shtml
皆さん、こんにちは。
ナオヤM
です。
この F0rum Patio 掲示板スクリプトは Perl で記述されていますが、最近では Perl は「最も嫌いな言語」だとか「オワコン」とか言われ、どんどん人気が低下しています。 Perl は30年以上の歴史を持ち、テキスト関係の処理が得意で以前は人気がありましたが、最近は Ruby や Python にその位置を譲り、動的WEB ページも約70%が PHP で書かれていて PHP で書かれた WordPress 等に圧倒されています。 僕の姉妹掲示板の wizphp ではスケジューラーソフトも PHP で書かれています。 Perl は pers エラー等がでると "outputs before headers" 等とサーバーエラーになるのでブラウザでエラーが確認しずらい、UTF-8 化が BINMODE 等と癖が強い、.cgi や .pl などスクリプトをブラウザから起動するには パーミッションで 755 等と実行権が必用、スクリプト冒頭に "#!/usr/bin/perl" と実行する perl の絶対パスを示す shebang が必要等々 PHP と比べても制約が多いのは事実です。
そこで、この Forum Patioi も PHP 化が出来ないだろうかと、Perl → PHP 自動変換に関してググってみました。すると日本語の WEB ページでは「無いですねえ。 変換ツールなんか作ろうとしてもどうせ完璧に動作させる事が出来るものなんか出来るはずもないですし、そんなもの作るよりはPHPで作り直したほうが(様々な要因を考慮しても)てっとり早いです。」と否定的なページばかり。 ところが GitHub に "https://github.com/SiliconEngine/PerlToPHP" というページ見つかり、ダウンロードして Linux にインストールしてみたら一応動作はしました。
ナオヤM
しかし、掲載元の説明にあるとおり、一から書き直すよりは早いかな? 程度の出来で、とてもそこに唄っている70%程度の変換率には程遠い感じでした。ただ自分で一から作るよりは早そうなので、このコードに加筆して、変換率 95% 位に持って行ければと思っています。 と言うわけで、いつのことになるか分かりませんが、一年程度を目途にこの掲示板スクリプトも PHP 化出来ればなぁと考えています。
ナオヤM
修正・削除
No.1: Re: Perl から PHP へのスクリプト自動変換について
←返信
←引用して返信
日時: 2022/09/08 11:50
名前:
ナオヤM
ID:FkAa9R3Y
参照:
http://viola.vmorita.com/bbs/patio/forum.shtml?room=patio
・ SiliconEngine/PerlToPHP が一番使えないな~、と感じた点は"_"で連続する変数名をキャメル形式に勝手に書き換えてしまう点です。 キャメル形式の変数の方が PHP には相応しいのかもしれませんが、 Java じゃあるまいし、変換という観点からは百害あって一利無しです。 grep -n で調べて見るとこの処理は PpiToken.php の 187 行から 7 行にわたって行われているようなので、これをコメントアウトして無効にしました。
・ あと日本語のサイトをもう一度調べてみると、「PHP/PerlからPHPへ書き換え補助PHP」というページに辿り着きました。
https://shade-search.com/sts/term/term.php?noform=vhNB6oPvMD&sort=menu
このページにある「ダウンロード perl2php_ver1.1.zip」と言うリンクをクリックすると日本人の手になるもう1つの変換ソフトがゲットできます。 これも自動変換が一発で動作することは「絶対にない」と言い切っているので補助ソフトには違いないのですが、選択肢が色々選択できるようなので、自由度は高いかなと思います。 ただ返還後の出力はファイルでは無く、WEB 画面だけなのは日本人特有の「奥ゆかしさ」故でしょうか。
・ 上記2点ともどっちもドッチですが、取り敢えず初めの方から始めています、 ところが "=pod ................... =cut" で囲まれた460行にも渡る perl 冒頭の長~いコメント文(説明文)が一行のコメント文として変換されたらしく、僕の使っているエディタ(NoEdotor)では32,768文字以上あるからと言って読み込めませんでした。取り敢えず vi でこの一行を削除して継続しましたが、この分ではいつになることやらです。
ナオヤM
修正・削除
逆順に表示
スレッド一覧
新規スレッド作成
レス(返信) 投稿フォーム
題名
スレッドをトップへソート
返信する相手先
(No.
)
番の記事に返信
←スレッド元テーマに返信
名前
E-Mail
入力すると
をクリックした人からメールを受け取れます(アドレスは表示されません)
URL
添付ファイル
表示: jpg/gif
DL:zip/pdf/cgi
標題:
標題:
標題:
パスワード
記事メンテ時に使用 (入力しておくと後から発言を修正・削除できます: 英数字 8 文字以下)
投稿認証キー
(投稿時
を入力してください。投稿認証キーは表示後
360分間のみ有効
です。)
記事本文
(全角5000字まで)
文字色
■
■
■
■
■
■
■
■
■
■
■
■
■
クッキー保存