タグ

2020年10月29日のブックマーク (2件)

  • Goのヌル安全について

    「ヌル参照の考案は10億ドル単位の過ち」と語ったホーア氏(Goの並列処理モデルCSPの考案者でもあります)。そしてモダンな言語処理系は「ヌル安全」を持つのが流行です。しかし、Goには完全な「ヌル安全」の仕組みを持ちません。 Goのメモリ安全機能 もちろんGoは完全なヌル安全とは言えないまでもヌルポ参照対策や不正なメモリ参照を防ぐいくつか考慮した仕組みや慣習を持っています。 ポインタの算術移動を許さない言語仕様 確保するメモリは全てゼロ値で初期化済み エラーがnilなら有効な値を返すという慣習 必須のエラーチェックがヌルチェックを兼ねている これらによりGoは完全に「メモリ安全」であり、「ヌル安全まであと一歩」までの仕組みを持っています。それでもヌルポ参照は「ランタイムパニック」という形で現れます。 ランタイムパニック Goでは「ランタイムパニック=コードの不備の通知」です。 多くのコードの

    Goのヌル安全について
    bootJP
    bootJP 2020/10/29
  • » 【わがスパコン人生】第1回 小柳義夫

    のスーパーコンピュータの発展に多大な貢献を果たした人物を紹介していく連載。 記念すべき連載第1回は小柳義夫先生にスーパーコンピュータの成り立ち、ご自身のバックグラウンドなど貴重なお話を伺いました。 「スーパーコンピュータ誕生」 ―スーパーコンピュータ(スパコン)とはどのように誕生したのでしょうか? いわゆるコンピュータ、昔でいう電子計算機は第二次世界大戦中、大砲の軌道計算を主目的に開発されました。弾が飛ぶなんて放物線を描くだけじゃないかと思いますが、風や空気抵抗があり、その上地球が自転していることも考えなければいません。それまでは手回し計算機で表を作っていましたが、電気を使ったら早いだろうと開発が進められ、1946年2月14日バレンタインの日にお披露目されたものがENIACです。今から見れば電卓よりも遅いぐらいですが、人間が計算するのに比べたら驚異的なスピードで画期的な計算機でした。

    » 【わがスパコン人生】第1回 小柳義夫