回答 (9件中の1件目) そうですか? さくらのレンタルサーバーやXserverでは使えるし、レンタルサーバーでpythonだけ使えないっていうことに遭遇したことないです。共用レンタルサーバーならruby、perl、pythonはひと揃い入ってるものという印象なのですが。 私のレンタルサーバーのチョイスが偏ってるだけという可能性はなのは否定しませんが、ちなみに使えなかったのってどこの何プランでした?
VA Researchの歴史においてオープンソースは外せない話題であるが、特に1998年の2月から4月までの期間はVAを抜きにしてもオープンソースにとって極めて重要な出来事が多いのでやや詳細に書いていく。現在、一般的にオープンソースの誕生は下記のように説明されることが多いのではないかと思う。 「Netscapeブラウザのソースコード公開計画の公表を受け、1998年2月にLinuxとフリーソフトウェアの開発者、コミュニティリーダーらがシリコンバレーに結集し、フリーソフトウェアに替わる用語としてオープンソースという言葉を生み出し、その定義を定め、オープンソースという商標を管理する組織を作った。Linus Torvaldsなどの著名なハッカーがそれに対して賛同し、一般に広まった。」 特にフェイクが含まれているわけでもないし、大概これで問題ないようには思うのだが、何故、この言葉を生み出す必要があっ
_ Rubyが今のPythonの地位にいない理由 歴史のことなんぞなんも知らんけど、「技術的には今のPythonの地位はRubyでもよかったのに、そうならなかった」のが何故か、その理由を書いてみよう。僕はRubyの歴史なんて知らないし、以下の文章は全部、まるで見てきたかのように書いてますが、適当に書いたくせに何故か断言口調になっている怪文書の類いです。 https://twitter.com/mametter/status/741950239662170112 まめさんの書いた理由リストはどれも関係ない。いやカスってるけど。難しいというのも関係ない。 僕がRubyを知ったころ…最初に書いた通りRubyの歴史なんて知らないので、別に早くもないわけだけど…Rubyというのは全く使われていない言語だった。どっかの好き者がPerlの替わりに単純な処理に使って、「ウフ、美しくかけた、グフッ」とかつぶ
はじめてのにき(2016-03-10) を見て。 Python の Zen の一つ "There should be one - and preferably only one - obvious way to do it." はよく誤解される。 これはもちろん Perl の TMTOWTDI 「やり方は1つじゃない」に対するものなのだけど、反対の「やり方は1つが良い」という意味では決して無い。 現実的なプログラミング言語でそんなアホな目標を持ってはいない。訳すなら「判りやすいやり方が1つは必要だ -- その1つだけなら最高だね」で、 preferably~ の部分は補助的なものだ。 例えば conditional expresson x if cond else y は、普通の if/else 文と一時変数を使えば良いので、新しいやり方だ。でも、これがない時代は、一部のエキスパートが c
(訳注:2016/1/5、いただいた翻訳フィードバックを元に記事を修正いたしました。) よくある主観的で痛烈な意見を題名に付けたクリックベイト(クリック誘導)記事だろうと思われた方、そのとおりです。以前指導してくれた教授から教わったある洞察/処世術は、些細でありながら私の人生を変えるマントラとなったのですが、私がこの記事を書いたのはそれによるものです。「同じタスクを3回以上繰り返す必要があるなら、スクリプトを書いて自動化せよ」 そろそろ、このブログはなんだろうと思い始めているのではないでしょうか。半年振りに記事を書いたのですから。ツイッターで書いた Musings on social network platforms(ソーシャル・ネットワークプラットフォームについてじっくり考える) はさておき、この半年の間書き物をしていないというのはうそです。正確には、400ページの 本 を書きました。
この10年間で、3つのメジャーなプログラミング言語が、それぞれPerl 6、Python 3、PHP 6へと大幅なバージョンアップに乗り出しました。ところが、Unicodeのサポート問題などの表面的な類似点があるにも関わらず、根本的に異なった展開を見せています。 今年Perl 6.0.0が公式にリリースされるのに伴い、いま一度振り返って、リリース後の展開について考えてみるのに、今はちょうどいいタイミングでしょう。 これを書いていることが自分でも信じられないのですが、PHPから学ぶべきことがあるかどうか見ていきましょう。Zend TechnologiesのCEOであるAndi Gutmans氏は2008年2月の インタビュー でこう答えています。 我々はPHP 6に対し長いサイクルでのロールアウトを予想している。Perlプロジェクトに対しては、プロジェクトのコントリビューターがいまだPerl
gistfile1.md if式 / if文 の条件節で、左辺に定数を書くべき言語はあるか? @ajiyoshi.gist twitterからながれてきたこの話題。昔のCコンパイラは、if文の条件節で代入を書いても文句を言わなかったので、このようなコードに何の警告も出なかった。 #include<stdio.h> int main() { int x = 0; /* おそらく意図と違う。 x == 1 と書くべきであった これでは常に実行されてしまう */ if ( x = 1 ) { puts("残念"); } } 「これをこのように書けば、コンパイルエラーになり、ある種の誤りをコンパイラに見つけさせることができる」というのが、「老害」とされる人の主張である。 /* これはコンパイルエラーになる */ if ( 1 = x ) { puts("残念"); } もし使っている環境が「コンパ
Twitterに書いたことのまとめです。 プログラミング言語の仕様の一部として正規表現リテラルを提供することの得失について、JavaScriptを例に説明します。 ■より簡潔なコード 言うまでもありませんが、正規表現リテラルを使った方が簡潔なコードになります。 (new RegExp("abc")).exec(s) // リテラルを使わない場合 /abc/.exec(s) // リテラルを使った場合 また、正規表現リテラルがない場合は、文字列リテラルとしてのエスケープと正規表現としてのエスケープが二重に必要になる結果、コードの保守性が低下します注1。 new RegExp("\\\\n"); // リテラルを使わない場合 /\\n/ // リテラルを使った場合 ■エラー検出タイミング 正規表現リテラルがない場合、実際にその正規表現が評価されるまで記述エラーを検出することができません。正規表
http://www.youtube.com/watch?v=82hJbjqbIt4 Node.jsのコアチームのリーダであるIssac SchlueterがSan FranciscoのMeetupで、Node.js v1.0にむけての現状アップデートをシェアしてます。 Stream2のステータス 相当リファクタリングした 99%後方互換性 npmの計画 githubログイン、githubレポジトリとの統合 レコメンデーションエンジン モジュールランキング: CPAN Kwaliteeっぽいものにしたい Node.jsは成長した APIが壊れるなんて過去のこと。我々は大人になった。 今動くコードは来年も動く Node.jsがたった4年半でここまで成熟するとは皆思わなかったはず。 だからNode.jsコアは小さなサイズをキープしたい Node v0.12 TLS (Transport La
今までPerlはperlbrew、Pythonはpythonbrewを使っていたのだけど、最近なんとかenvみたいなのが流行ってるらしいので乗り換えてみた。 乗り換え動機 pythonbrewはメンテナンスされなくなったらしい*1 Rubyでrbenvを使ってるので同じようなやつで揃えたい plenv https://github.com/tokuhirom/plenv 基本的にはINSTALLATIONの通りにやればいい。rbenvなんかと同じ。 ただ、CentOS6に入れようとしたら、plenvを動かしてるシステムのPerlのModule::Metadataversion.pmが古かったらしくてエラーが出たので、それだけ新しく入れ直す必要があった。(23:11訂正) # CentOS6の場合 $ sudo yum install perl-CPAN $ sudo cpan versio
.zshrcにstatic_httpdって関数つくってる。 dotfiles/.zshrc at master · kamipo/dotfiles · GitHub function static_httpd { if type plackup > /dev/null; then plackup -MPlack::App::Directory -e 'Plack::App::Directory->new(root => ".")->to_app' elif type ruby > /dev/null; then if ruby -v | grep -qm1 'ruby 2\.'; then ruby -run -e httpd -- --port=5000 . else ruby -rwebrick -e 'WEBrick::HTTPServer.new(:Port => 5000, :D
a side-by-side reference sheet sheet one: version | grammar and execution | variables and expressions | arithmetic and logic | strings | regexes | dates and time | arrays | dictionaries | functions | execution control | exceptions | threads sheet two: streams | asynchronous events | files | file formats | directories | processes and environment | option parsing | libraries and namespaces | objects
たまにはちゃんと書いたほうがいいかなと思って書いてみる。 あらまし 原始的な参照カウントベースのガーベジコレクションは、循環参照が発生すると、その参照に含まれるオブジェクトを回収できないという厄介な問題を抱えている。循環参照とは、1つ以上のオブジェクトが環状の参照関係を形成している状態のことで、このような参照を持つオブジェクトは、やがてルート (ある時点で言語ランタイムが管理しているすべてのスコープと考えてもいい) から辿りつけなくなって、解放されずにリークしてしまう。 この問題はいろんな LL 言語に見られる。 Perl の場合 use Devel::Peek qw(Dump); sub make_circular { my $foo = {}; my $bar = {}; my $baz = {}; $foo->{'bar'} = $bar; $bar->{'baz'} = $baz;
Twitterのタイムラインが面白すぎて、ついうっかり言語を擬人化して脳内で言語女子会なるものを開いてしまいました。なお、登場人物と実在の人物は1対1に対応しません。 undefinedとnullの両方必要なの? とあるプログラミング言語が集う女子会にて: Perl: そういえばさ、なんでJavaScriptちゃんってundefinedとnullの両方もってるの? JavaScript: えっ、未定義の変数にアクセスした時undefined返したいじゃない? Python: 例外投げて死ねばいいじゃん Ruby: 例外投げて死ねばいいよね Python & Ruby: ねー♡ Java: いやそこは参照型ならnull、数値型なら0で初期化すべきでしょ C: これだから最近の若い子は…初期化にだってコストが掛かるんだからね!デフォルトで初期化するなんて無駄遣いよ!必要な人だけが責任をもって初
今日はLL Planetsに来てます。以下内容のメモ書き。Twitterやってないんでここに書くけど、ほぼリアルタイムで。 (2011/08/25追記:公式に当日使われて許可済みのスライドがまとめられていました) メタプログラミングの光と影 Perl、Ruby、Python、Heskellでのメタプログラミングの紹介 Perlではあんまり、メタプログラミングは使わない印象だけど、パーサーまでメタプログラミングでイジる事ができる。 RubyはrailsでDSLが爆発的に増えた感じ。元々RubyのAPIは豊富にある。 Pythonも言語自体でサポートされている機能で内部DSLなどはできるが、外部DSLは苦手。 Heskellは、コードが分からなすぎてワロタ。だけど、関数パーサーなどは手軽に出来る。あと、型安全って良いですね。 基調講演:「JavaScriptプログラマのための全方位的完全武装ガ
Matzさんに「closureの件、結論としては元記事のPerl, Python(+JavaScript), Schemeプログラムがそれぞれまったく別のことをしていただけで、closureの仕様はすべて同じであるということ。」と指摘されたので、もう一度整理してみます。 http://twitter.com/yukihiro_matz/status/26707927087 sumimさんのSmalltalkとRubyの例(http://d.hatena.ne.jp/sumim/20101008)も加えます。 実験内容 言語間でやっていることの相違がないように、できるだけ似たコードにする。 ループでiを0から4まで回す ループブロック内で: iを埋め込んだlexical variable、'localvar'を定義。 localvarを参照したclosureをリストに追加。 5つのclosu
メモ: ・日本語の取り扱いのめも その2(文字列長、バイト長について) ・バージョンはruby 1.9.1p129,perl v5.10.0,Python 3.0.1 ・バージョンが古いと動かない ・ついでに 404 Blog Not Found:perl, python & ruby - chr() vs. Unicode と 404 Blog Not Found:perl, python & ruby - ord() vs. Unicode の情報は古いので、今の書き方を書いとく ruby perl python 文字列長 文字コード指定が正しいなら文字数 utfフラグ付きなら文字数 code unit数(文字数でない)*1 configureで--with-wide-unicodeすれば文字数 ※1ただし、コンパイル時のオプションで変えられるらしい 参照:DSAS開発者の部屋:Pyt
2010年09月03日05:30 カテゴリLightweight LanguagesMath Algorithm - 0と1を次々と返す簡単なお仕事 ごもっとも。 0と1を次々返す方法 - a2c.get.diary TrueだったらFalseで、FalseだったらTrueにしたい。 なんかそんなことそこかしこで必要で、その為の便利なものが あるのかなぁと思ったんだけど無いぽい Closure 本来は一番おすすめなのだが… JavaScript ()が煩わしいが、perlやrubyよりは自然。 #!/usr/bin/js var flipflop = function(p){ p = !p; return function(){ return p = !p; }; }; var fl = flipflop(); console.log(fl()); console.log(fl()); c
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く