ときどきの雑記帖 倒行逆施編

最新ページへのリンク
目次ページへのリンク

一つ前へ 2015年3月(上旬)
一つ後へ 2015年3月(下旬)

ホームへ

2015年03月20日

■_

ね、値段が ダンボー顔のトートバッグ、FLAVOR×PORTERのHELLOデザインとコラボ | マイナビニュース

「前倒し」の反対だから。つーことなんだろうけど なんというかこうもやもやがですね>「後ろ倒し」 キャリアニュース:就活「後ろ倒し」、就職活動を実質的に長期化させるとの調査結果 - MONOist(モノイスト)

イミテーションゲーム、今日観に行けるかと思ったが間に合わなかった (上映開始があと30分遅ければ…)

■_

2015年03月19日

■_

“ステレオタイプな神話を壊す”:新たなスティーブ・ジョブズの伝記「Becoming Steve Jobs」、3月24日に発売へ - ITmedia ニュース ちょっと前に英文blog で紹介記事を見かけた本はこれだったか。 ジョブズ氏の伝記としては、2011年に出版されたウォルター・アイザックソン氏による「スティーブ・ジョブズ」が“ジョブズ氏公認”として有名だが、アイブ氏は以前、New York Timesでのインタビューで、この本を部分的にしか読んでいないが、「これ以上ないほど低く評価する」と語っている。 これはこれで興味が湧くなあw (正直、Ive本は今ひとつだった)

おっと、すでに発売されてた? でも amazon.com でみても3/24発売だよなあ。

東急武蔵小杉駅。 目黒線のホームには最初からホームドアがついていたけど、 東横線のホームも渋谷方面が今月初めくらい 横浜方面も今週設置された(まだ稼働はしていない)。

リファクタリングでバグ。 某社の某プロダクトでちょっと大きめなバグがありまして、 話を聞いてみたら 「リファクタリングしたときに(ロジック間違えて)エンバグしてました」 ですと。 なんかこう、もやもやするものが (リファクタリングって一体どういうもの? 的な)。

んでまあ、そういう格好な素材w があるなら プログラム検証とか 形式論理とか試してみたいんだけどねえ…

「雲竜型」の話。 飛龍の略同型になったのは純粋に工数の問題だと思ってたんだけど、 たとえば翔鶴型の規模の艦にすると建造できるドックや船台がほとんどなかったてもの理由だったらしい (四箇所だか五箇所)。 そういう話を見聞きするにつけなんだかなあ。と。

■_

■_

Which Scripting Language Is The Best? - Devfind で、各言語の詳細な説明は省いて pros/cons のところだけ抜き出すとこんな感じ

PHP:

Pros:

    Massive online community.
    Most popular web apps such as WordPress and Drupal are coded in PHP.
    As a server-side scripting language it has very few competitors.

Cons:

    Not as popular on the desktop as other languages.

PERL:

Pros:

    Large and friendly online community like most languages on this page.
    Fast execution times and elegant syntax make it fun to code with.
    Thousands of external modules available to enhance its power.

Cons:

    Not as popular as it once was.
    Seems to be better suited to desktop scripting than server side scripting.

PYTHON:

Pros:

    Beautiful and elegant syntax.
    Very easy to start coding with even for beginners.
    Popular on the desktop.

Cons:

    Popularity is low in the server side area of programming.
    Can be hard to get used to if you are used to strongly typed languages such as C or Java.
RUBY:

Pros:

    Growing in popularity.
    Has Ruby on Rails among its most noticeable apps.
    Fully Object Oriented.

Cons:

    Still Maturing so it’s hard to tell how it will succeed in the long term.
    Not quite as easy as Python if you are a beginner.

2015年03月18日

■_

テクニウムを読んでいて「モンキーレンチ工作」なる言い回しが出てきたんだけど どういう意味だろこれ。p229 の真ん中辺り。 伝説的な自然保護活動家エドワード・アビーは、工業文明を、地球と人類をつぶす 「圧倒的破壊力」と考えた。 アビーはその力を阻止するために、 自らモンキーレンチ工作を展開し、材木切り出し設備などで妨害行為を行った。 ざっと検索した感じではこれというものは見つからなかった (日本語でも英語でも)。

ドア。 こちらが押してドアを開けたときに、脇を抜けて通ろうとする御仁、ありゃなんだ。 あ、逆もいたな。 こっちに引いて開けたドアにつっこんでくる奴。

バグの話。 とても面白い? バグの話を聞いたのだけど会社の製品に関わる話なので 細かいことは書けないのだった。

げげ。二月くらい前に一年分払ったばっかだ。 希望者には払い戻しするよってメールも来てたけどさてどうしよう… Hacker Monthly will publish its final issue 12 months from now. - Hacker Monthly Blog Hacker Monthly will publish its final issue 12 months from now | Hacker News

30年かあ(遠い目)。 毎日のように翻訳記事出しているあそこやらあそこやらは こういうのには手を出さないんだろうね。 The GNU Manifesto Turns Thirty | Hacker News Richard Stallman’s GNU Manifesto Turns Thirty - The New Yorker “Happiness for me is a combination of feeling good about myself and having love,” he said. “And to feel good about myself, I have to do things that convince me I deserve it.” とか When I asked him whether his message is received more readily in countries with a stronger political left, he said, “Yes, it is. Basically, Americans have shown that they are politically naïve. If you look at how successful plutocratic candidates are in the U.S.—you can get Americans to vote to give their money to the rich. You have to just say certain predictable, silly things to them, and most of them will be fooled.” He paused for a moment, then added, “The point is, even though it’s sad to see people being foolish, there’s no use giving up. Nothing good can come of giving up. That just means you lose completely, right away.” この辺がぐっと。

■_

■_

とりあえず pocket ( http://getpocket.com/ )に入れた。 This New Vulnerability: Mercurial Command Injection (CVE-2014-9462) - Blog - Matasano Security

2015年03月17日

■_

Nexus7 (2012) がまたおかしくなった○| ̄|_

「雲竜型」

人工知能は人間を超えるか ディープラーニングの先にあるもの (角川EPUB選書)
人工知能は人間を超えるか ディープラーニングの先にあるもの (角川EPUB選書) 人工知能は人間を超えるか (角川EPUB選書)
人工知能は人間を超えるか (角川EPUB選書) 買った。

見かけないなーと思ってたんだけど 商品紹介 - 味覚糖のど飴|UHA味覚糖 UHA味覚糖 商品カタログ 味覚糖のど飴缶 アンディ・ウォーホル(グレープ/コーラ/ミント) 商品、地区により、発売日が異なりますので店頭に並んでいない場合があります。 詳しい情報をお知りになりたい場合は、お問い合わせ窓口からお問い合わせください。 うーん?

■_

■_

11 Rules All Programmers Should Live By - Simple Programmer 11個のルール。 概ね首肯できるものじゃないかと。

  1. Technology is how you get to the solution, it is not THE solution
  2. Clever is the enemy of clear
  3. Only write code if you absolutely have to
  4. Comments are mostly evil
  5. Always know what your code is supposed to do before you start writing it
  6. Test your sh—code before you ship it
  7. Learn something new every day
  8. Writing code is fun
  9. You can’t know it all
  10. Best practices are context dependent
  11. Always strive to simplify

What rules do you live by?

So, those are my rules, but what about yours?

What rules do you personally live by?

What do you think is important to remember every day?

2015年03月16日

■_

あー、昨日だったのか x86/x64最適化勉強会7レポート | Cybozu Inside Out | サイボウズエンジニアのブログ

ぐにゃり。

■_

2015年03月15日

■_

こういうのって暦の違いを無視していいんだろうかといつも思う。 赤穂浪士の討ち入りとか。

■_

2015年03月14日

■_

『阿呆の道よりほかに、我を生かす道なし』 ということでサイン本売ってたので買ってしまったw 有頂天家族 二代目の帰朝

「イミテーションゲーム」いつ行きましょうかね。 イミテーション・ゲーム/エニグマと天才数学者の秘密 でもここに書かれているあらすじ(?)読むとなー 3月13日公開の映画『イミテーション・ゲーム』:世界最初のコンピューター科学者がナチスを打ち負かす物語 | ライフハッカー[日本版]

■_

■_

ECMAScriptの仕様から ECMAScript Language Specification - ECMA-262 Edition 5.1

ECMAScript Language Specification - ECMA-262 Edition 5.1

10.6 Arguments Object

The arguments object is created by calling the abstract operation CreateArgumentsObject with arguments func the function object whose code is to be evaluated, names a List containing the function’s formal parameter names, args the actual arguments passed to the [[Call]] internal method, env the variable environment for the function code, and strict a Boolean that indicates whether or not the function code is strict code. When CreateArgumentsObject is called the following steps are performed:

さくっと省略

The abstract operation MakeArgGetter called with String name and environment record env creates a function object that when executed returns the value bound for name in env. It performs the following steps:

  1. Let body be the result of concatenating the Strings "return ", name, and ";".
  2. Return the result of creating a function object as described in 13.2 using no FormalParameterList, body for FunctionBody, env as Scope, and true for Strict.

The abstract operation MakeArgSetter called with String name and environment record env creates a function object that when executed sets the value bound for name in env. It performs the following steps:

  1. Let param be the String name concatenated with the String "_arg".
  2. Let body be the String "<name> = <param>;" with <name> replaced by the value of name and <param> replaced by the value of param.
  3. Return the result of creating a function object as described in 13.2 using a List containing the single String param as FormalParameterList, body for FunctionBody, env as Scope, and true for Strict.

「replaced by the value of param」だよねえ。

2015年03月13日

■_

またか。なんですが Flash Playerに脆弱性 - US-CERTが注意喚起 | マイナビニュース こっちにある Adobe Security Bulletin CVE number: CVE-2015-0332, CVE-2015-0333, CVE-2015-0334, CVE-2015-0335, CVE-2015-0336, CVE-2015-0337, CVE-2015-0338, CVE-2015-0339, CVE-2015-0340, CVE-2015-0341, CVE-2015-0342 なにこれw いやまあ、これまでの修正でも似たようなものだったのかもしれないけど 確認したのは初めてだったのでちょっと驚いた。

会社での自席。 なんつーか「やかましい」 まー開発部門じゃない(=他の部門とのやり取りの電話がよくある)ってのも あるんだろうけど、にしてもなあ。 騒音計で測りたいくらいだw

■_

■_

JavaScript じゃないけど、まあ同じだろ。 ECMA-262 » ECMA-262-3 in detail. Chapter 8. Evaluation strategy.

ECMA-262 » ECMA-262-3 in detail. Chapter 8. Evaluation strategy.

ECMAScript implementation

Now we know which evaluation strategy for passing objects as arguments is used in ECMAScript — call by sharing: changes of properties of the argument are affected outside, assignment of the new value — do not influence external object.

But as we mentioned above, among the ECMAScript developers the local terminology for this strategy is used — there it is called as “call by value where value is the reference copy”.

JavaScript inventor Brendan Eich also notices that the copy of reference (copy of address) is passed. In discussion on one of forums cites of ECMAScript developers which also name this as call by value are also provided.

More precisely, this behavior can be understood and by consideration of simple assignment where we can see that there are two different objects, but with identical value — an address copy.

Terminology versions

Let’s define versions of allowed terminology concerning this question in ECMAScript.

It can be either “call by value”, with specifying that the special case of call by value is meant when value is the address copy. From this position it is possible to say that all without an exception objects in ECMAScript are passed by value, that actually provides level of ECMAScript abstraction.

Or special for this case strategy — “call by sharing” which precisely allows seeing differences from classical call by value and from call by reference. In this case it is possible to divide passing types: primitive values are passed by value and objects — by sharing.

The statement “objects are passed in function by reference” formally is not related with ECMAScript and is incorrect.

「参照渡し」に関する誤解はどうにかできないもんですかいねえ。

2015年03月12日

■_

丸 2015年 04 月号 [雑誌]
丸 2015年 04 月号 [雑誌] 煙突、傾いて(傾けて)ますね。 艦番号6ということはこいつかな?

■_

■_

またぞろこの話題が出たので、うぃきぺ(日本語版)を見たんですよ。 評価戦略 - Wikipedia

評価戦略 - Wikipedia

参照呼び(call by reference、参照渡し: pass by reference)では、仮引数が実引数そのもの、すなわちエイリアス(en:Aliasing (computing))になる。実引数は、左辺値を持たねばならない(Pascalのように、実引数を変数に限定した言語もある)か、左辺値を持たない式の場合は呼び出し側で一時的オブジェクトを構築する言語もある。

仮引数の変数は実引数のエイリアスであるから、それへの代入は呼び出した側の変数にも影響する。これを、ミュータブルなオブジェクトがある多くの言語において、オブジェクトへの「参照の値渡し」を行い、オブジェクトを変化させた場合に、呼び出した側から見てオブジェクトの変化が見えることと大変しばしば混同される。

関数の引数として参照を値渡しすることを参照渡しと呼ぶこともある、とか、C言語のようにポインタを持つ言語では、参照呼びではなく「アドレス呼び(call by address)」と呼ぶこともある、とか考える者もいるようだが、間違いである。C++ではなくC、Java、JavaScriptなどの値呼びしかない言語には参照呼びは無く、「それらの言語において似たように見えるもの」を「参照呼び」と呼ぶのは間違いである。間違った説明をネットに掲載したり、さらには書籍にまでする者が後を絶たず、非常に広範に流布しているが間違いである。C言語では、アドレス演算子 & により変数のアドレスを渡すことができるので、呼び先で元の変数の中身を変えてしまうことができるが、値呼びであることに変わりはない。

いつの間にこんな記述にw

Evaluation strategy - Wikipedia, the free encyclopedia

Implicit limitations

The description "call-by-value where the value is a reference" is common (but should not be understood as being call-by-reference); another term is call-by-sharing. Thus the behaviour of call-by-value Java or Visual Basic and call-by-value C or Pascal are significantly different: in C or Pascal, calling a function with a large structure as an argument will cause the entire structure to be copied (except if it's actually a reference to a structure), potentially causing serious performance degradation, and mutations to the structure are invisible to the caller. However, in Java or Visual Basic only the reference to the structure is copied, which is fast, and mutations to the structure are visible to the caller.

「参照の値渡し」に相当する英語表記が "call-by-value where the value is a reference" なんですかね。

2015年03月11日

■_

Windows update に手こずって一回休み

■_


一つ前へ 2015年3月(上旬)
一つ後へ 2015年3月(下旬)

ホームへ


リンクはご自由にどうぞ

メールの宛先はこちらkbk AT kt DOT rim DOT or DOT jp