タグ

qiitaとGCに関するslay-tのブックマーク (4)

  • GoのGCを10分で学ぼう  - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに GoのGC(Garbage Collection)を調べる中で学んだことをなるべく分かりやすく簡潔にまとめたものです。 GCのアルゴリズムやメモリ割り当てについてまとめています。 記事内で使われている「オブジェクト」という用語はGoにおいては適切でないかもしれませんが、説明のしやすさから使用しています。 概要を把握しやすいように単純化しているため細部は正確でない部分があります。 GC基 用語集 前提となる用語です。 ルート ルートとは、オブジェクトが到達可能か(生存しているか)を判定するための始点です。 プログラミング言語に

    GoのGCを10分で学ぼう  - Qiita
  • Python 3.8 では空dictが小さくなる - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    Python 3.8 では空dictが小さくなる - Qiita
  • GHC/RTSのGCについて - Qiita

    Haskellで効率の良いコードを書くためにはいかに不要なサンクを潰すか、ということが重要だと言われています。しかし、そもそもなぜサンクが増えると効率が悪くなるのでしょうか。 Haskellのメモリ確保は高速 まず、Haskellにおいてメモリの確保はどの程度コストがかかるものなのでしょうか。次のプログラムを使って確かめてみましょう。 {-# LANGUAGE BangPatterns #-} {-# OPTIONS_GHC "-ddump-simpl" #-} module Main2 where bench :: Int -> (a -> a) -> a -> a bench n f i = go n i where go 0 !i = i go k !i = go (k-1) (f i) {-# NOINLINE bench #-} main :: IO () main = prin

    GHC/RTSのGCについて - Qiita
  • 最近ホットな Vim Plugin 3つ - Qiita

    最近ホットな Vim Plugin を3つ紹介します。どれもカッコいいプラグインですので、気に入ったら是非使ってみてください。 vim-over vim-overの概要 vim-overは、EmacsのEvilのような一括置換ができるプラグインです。 どういうことかというと、置換する対象文字列がハイライトされ、さらに、その横に変更予定の文字列を表示するという、見た目がすごくカッコいい置換なのです。 Vimでは、:%s/foo/bar/gとしても、ハイライトされませんし、変更予定の文字列も表示されません。 たしかに、1つずつ確認するには、:%s/foo/bar/gcでできますが、どうも味気なく、地味なのです。 しかし、vim-overを使うと、そんな地味さも吹っ飛びます。以下の画像を見てください。画像では、一括置換を実行していますが、視覚的に分かりやすいし、カッコいい置換になっています。 %

    最近ホットな Vim Plugin 3つ - Qiita
  • 1