「非破壊」を含む日記 RSS

はてなキーワード: 非破壊とは

2018-02-25

pythonって一貫性なさすぎじゃない?

いや、実用的で素晴らしい言語だと思うよ。

でもさ、なんか一貫性が無いように感じるんだよね。

まず、言語の大半の部分がオブジェクト指向言語っぽいデザインになってるのに、listの要素数を測る手段len()って*関数*なのはどうなの?

(しか略語って...)

a = [1, 2, 3]
len(a)  # 3

他にもあるよ! pythonくんのアレな所

俺は、sortとsortedって言う命名からこの挙動をまったく予測できなかった。

  • 破壊的変更をする list.sort()
a = [1, 3, 2]
a.sort()  # None
a  # [1, 2, 3]
sorted([1, 3, 2])  # [1, 2, 3]

しかもsortedにdictを渡すとkeyがlistに変換されてソートされて返ってくる。

コードリーダビティに関する本を開けば、どの本にだって「良い名前選択する」ことの重要性が書かれていると思う。

「sort()が破壊的で、sorted()が非破壊的、sorted()にdictを渡すとkeyのlistがソートされて返ってくる」これって良い命名なのかな?

pythonくんってこう言う所あるよね

配列の要素を文字列連結

", ".join(['1', '2', '4', '8', '16'])  # "1, 2, 4, 8, 16"

えーっ、join()のレシーバー区切り文字って…引くわー

しかも、これに対する「文字列リテラル (文字列定数) のメソッドを使うのは*醜すぎる*」という意見に対しての公式の返答が、これってのも凄い。

かにそうかも知れませんが*文字列リテラルは単なる固定された値に過ぎないというのが答えです。文字列に束縛された名前メソッドが許されるなら、リテラルに使えないようにする論理的理由はないでしょう。

https://docs.python.jp/3/faq/design.html#why-is-join-a-string-method-instead-of-a-list-or-tuple-method

The Zen of Pythonで「醜いより美しい方がいい」って言ってましたやん。

そもそもリテラルかどうかに関係なくstrインスタンスにこのメソッドがある事がおかしいと思った。

なんでpythonくんって一貫性ないの? pythonくん「歴史です」

pythonmap関数として実装されている。(まただよ...)

list(map(lambda x: x*x, [1, 2, 3]))  # [1, 4, 9]

なんでメソッドにしなかったの? って質問に対して公式がこう答えてる。

主な理由歴史です。複数の型に対しての総称的な操作で、対象オブジェクトメソッドを全く持っていなかった (例えば、タプル) としても働くよう意図したもの関数は使われました。

(中略)

個々のケースについては粗探しのしようがありますが、Python の一部であるし、根本的な変更をするには遅すぎます

https://docs.python.jp/3/faq/design.html#why-does-python-use-methods-for-some-functionality-e-g-list-index-but-functions-for-other-e-g-len-list

うわー、信じられねぇ…

歴史的経緯があるから一貫性が無いのは仕方ないみたいなこの感じ。

これが設計思想に「醜いより美しい方がいい」を掲げるpython実装なんだねぇ…

pythonくんの良い所

散々pythonの事を悪く言ったけど、おれ実はpythonくんの良い所もいっぱい知ってるんだ。

pythonくんの良い所:

ライブラリが超充実してる!
インデントコードブロック表現する文法クール!
PEP8という規約であるべきコードフォーマットを明示したのが良いよね。
Cythonで高速化楽ちん!
namespaceが使いやすい! デコレーター便利!

美しくない、それゆえに強いプログラミング言語python

The Zen of PythonPython設計思想が色々書いてある。

「醜いより美しいほうがいい」という指針があることはさっき紹介した通りだ。

pythonがそれを体現してるとは、僕にはどうも思えない。

でもThe Zen of Pythonには「Although practicality beats purity.(実用性を求めると純粋さが失われることがある。)」とも書いてある。

pythonはこの設計思想を他の言語には無い高いレベル体現してるとは思う。

pythonは、

節操に色々取り入れた上で、「tupleからメソッドはやせないから、map関数にする」とか、メチャクチャ方法でそれらを統合した言語だ。

だが、そういう言語からこそ、pythonで書いたコードを育てていく中で様々なパラダイムへとシームレスに変化させていく事ができる。

そういう「不純であるがゆえに柔軟性を持ったプログラミング言語pythonだと思う。

ruby純粋性はすごいよ。イカれたくらい徹底されたオブジェクト指向

BaseObjectをrootとする継承のツリーの中に世界のすべてが収まっている。

haskell純粋性も凄い。「代入が無い」プログラミング言語に初めてであった時の衝撃。

でも、そういう純粋性をかなぐり捨てたpythonにはタブーが無い。

不純で醜い、それゆえに強い言語python.

から僕はrubyとの思い出を反芻し、haskellに焦がれながら、明日pythonを選び、書いていく。

2018-02-19

Pezy と NEDO と 夢の欠片(ドリームチップ

捜査終了記念に書いとく。なぜNEDOはPezyに補助金を出す判断をしたのか。

いまだにいる陰謀論者はとりあえずこの記事↓見てね。

東京地検特捜部のイメージと実態の乖離についてのメモ

で、なぜNEDOがPezyに補助金出す判断をしたかを書くまえに、

ドリームチップについて書かないといけない。

ドリームチップとは何か

Pezyが補助金を受ける前にNEDOはある大規模なプロジェクトを行っていた。

それが、「立体構造機能集積回路(ドリームチップ)技術開発」プロジェクトだ。

平成20年から平成24年度に至る5年間行われた。

開発予算は下記。5年間で 総額7,553百万円(75.5億円)

会計勘定補正予算分含む)

H20fy H21fy H22fy H23fy 総計
一般会計 1,700 2,452 1,740 1,661 7,553

このプロジェクト研究されたのは下記である。(最終報告書から抜粋

要するに半導体積層技術を用いてメモリ計算部を積層することを最終目標にしたプロジェクトである

設計技術

・高速電気回路、電磁界シミュレーション技術

・大パワーPISIシミュレーション技術

・熱応力シミュレーション設計技術

TSV形成技術

・狭ピッチ配置 ・μ径TSV形成

・低コストTSV形成技術シリカ材焼結技術

チップ積層技術

C2C技術 ・W2W技術 ・薄ウェハ化

バンプ技術 ・接着技術 ・放熱技術

評価技術

・非接触プロービング技術

非破壊TSV欠陥計測技術

材料技術

・積層接着材 ・TSV絶縁膜材

そして、最終報告書にあるとおり、実用案件の開発はしていない。

「次のステップとしての実用化、事業化に関しては、各社の経営判断問題で、全社が諸手を挙げて実用化に邁進しているわけではないでしょうが、」

「TSVを用いた三次元集積化技術実用化されておらず、研究開発項目①「多機能密度三次元集積化技術」において早急にこの技術開発を行う必要がある。」

などなど、実用化についての議論があるが、具体的な実用案件がないことを気にしている。

Pezyへの補助金

Pezyへの補助金は下記である

(1)平成22年度イノベーション推進事業3次元積層TSVメモリ技術活用したメニーコアプロセッサの開発

 助成期間:2010年度~2011年度 約1億100万円

(2)戦略的省エネルギー技術革新プログラムバンプレ3次元積層技術を用いた省電力メニーコアプロセッサの開発

 助成期間:2012年度~2013年度 約6億3300万円

(3)イノベーション実用ベンチャー支援事業/超広帯域Ultra WIDE-IO3次元積層メモリデバイス実用化開発

 助成期間:2013年度 約5億円

(4)平成27年戦略的省エネルギー技術革新プログラム/非接触型磁界結合通信を用いた高密度実装プロセッサデバイスの開発

 助成期間:2015年度~2017年度 約10億3000万円

(5)IoT技術開発加速のためのオープンイノベーション推進事業ビッグデータ解析のための低消費電力演算チップの開発

 助成期間:2016年度~2017年度 約12億6000万円

下2つは上3つの実績(Green500のTOP3独占など)から誰もが妥当と思うので、

上3つについてなぜPezyへ補助金を出したか説明する。

はいっても、ドリームチップ説明でほぼ済んでいるが、理由は下記である

・当時のNEDOドリームチップで要素技術の開発に成功していたが、実用化できないでいた

・Pezyの補助金題名を見てわかるとおり、「3次元積層TSVメモリ」「バンプレ3次元積層」

「超広帯域Ultra WIDE-IO3次元積層メモリデバイス」など全てドリームチップで開発していた技術実用化する案件である

・当時のNEDO中の人がTwwiterで言ったようにエルピーダから出資があるとの情報があった

ドリームチップと比べものにならない少ない補助金の額である

というわけで、Pezyに補助金が出たのは当時のNEDOドリームチップ実用化を希望していた。

Pezyはその実用案件提案し、NEDOの思惑を考慮していた。そして、それにNEDOが乗ったということである

まあ、上記NEDOが認めるまでは個人妄想に過ぎないが。

2017-03-21

http://anond.hatelabo.jp/20170321150411

もちろん、改ざんしたご本人からくるわけじゃございやせん。

アンオフィシャルな窓口である自分に連絡が来て「内部で自主的発見した」ってことになります

外部から指摘があると対応の手数が増えるので・・・

改ざんといっても現在のページを壊すものだったり、詐欺サイト用の商品ページを作られたりと破壊的・非破壊的さまざまです。

マルウェア埋め込みになるのが一番危ない事案だったりします。

基本的には犯人なんぞ分かるわけないしそもそも被害届をきちんと各方面に出しているのかさえ不明警察や所轄機関

このへんはICT管理組織問題があると思われるところだけど・・・

 
アーカイブ ヘルプ
ログイン ユーザー登録
ようこそ ゲスト さん