サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
やる気の出し方
www.tatapa.org/~takuo
書いた人: taku0 はじめに Emacsのアドベントカレンダー2022、8日目の記事です。 スクリーンショット Emacs上でNotionみたいなリッチなテキストが表示/編集できたらよいなと思い、なんとかできないか考えてみました。とりあえずproof of conceptレベルにはなったので公開します。 svg-table.elをevalして、svg-table-demoを実行してみてください。C-n C-p C-f C-bによるカーソルの移動や、テキストの挿入・削除ができます。 どうやって? Emacsには画像を表示する機能があります。「オーバーレイ」という機能を使うとテキストの一部を画像で置き替えて表示できます。そして画像としてSVGが表示できます(rsvgライブラリが使われています)。つまり、Emacsで画面が更新されるごとにSVGでGUIっぽい画像を作成して表示すれば、リッチな
短いまとめ: Scuttlebutt(スカットルバット)というのは純粋P2P型のSNSで、PatchworkというElectron製のパッケージをダウンロードして起動するだけでTwitterのようなSNSに参加できます。 もう少し長いまとめ: Scuttlebuttとはゴシッププロトコルによって複製される追記専用データベースを中心としたプラットフォームであり、SNSとしても利用できます。サーバとElectronによるUIがセットになったPatchworkという実装をダウンロードして実行するだけで、Windows, macOS, Linux上でノードを立ち上げられて、Twitterのようにメッセージをやりとり(投稿やフォローやDM送受信)できます。Patchworkの他にはGitHub風のソースコード管理アプリケーション等もあります。 目次 始め方 Patchworkのインストーラをダウンロ
意外と知られていない構造化プログラミング、あるいは構造化プログラミングはデータも手続きと一緒に抽象化する、あるいはストロヴストルップのオブジェクト指向プログラミング史観 書いた人: ると 猫型プログラミング言語史観(1) 〜あるいはオブジェクト指向における設計指針のひとつ〜という記事がありました。手続き型からの発展としてのオブジェクト指向という史観を書いた記事です。しかし、そこで次のように述べられている史観は少々単純化しすぎです。 手続き型プログラミングでは手続きを抽象化することで保守性を挙げることに成功したが、データを守ることには失敗してしまった。そこでオブジェクト指向はデータと手続きをひとかたまりにすることでデータを外から守るというコンセプトを打ち出した。 手続き型プログラミングの時代は、少なくとも思想的にはそこまで暗黒的ではありませんでしたし、「データと手続きをひとかたまりにする」の
ことり: ねぇ、この前ね、λ式はみんなこんな感じの関数“S”と“K”だけで表現できるって聞いたんだけど、本当?
<noscript> <div>ブラウザのJavaScriptが無効になっています。</div> </noscript> <h2>フレーム関連のアラート</h2> <p>このドキュメントはフレーム機能を使用して表示するように作成されています。フレームを表示できないWebクライアントの場合にこのメッセージが表示されます。<a href="java/util/stream/package-summary.html">フレームに対応していないバージョン</a>にリンクします。</p>
バグから学ぶ計算機科学 Scalaのハッシュテーブルにおいて並列コレクションのためのコード変更が大量の衝突を引き起こした事例 書いた人: ると 書いた日: 2012年1月21日 はじめに Twitterで「有名なオープンソースソフトで今まであったおもしろいバグを解説した本とかないだろうか」とツイートしたらそれなりに需要があるようでした。そこで先ず隗より始めよという故事にのっとり、死馬の骨としてバグ解説記事を書いてみます。 今回のバグはScala 2.9の標準ライブラリに含まれるmutable.HashSet(ハッシュテーブルを使った重複無しコレクション)のコピーがJavaの標準ライブラリに含まれるHashSetの100倍遅いというバグです。並列コレクションのためにぱっと見問題の無い変更を加えたら思わぬところで影響が出たというものです。 なお、今回はScalaに関するバグですが、Scalaに
2011年に読んだ論文紹介 または私は如何にして心配するのを止めて静的に型付けされたオブジェクト指向言語を愛するようになったか 書いた人: ると 書いた日: 2011年12月18日 今年読んだ面白CS論文紹介カレンダーの5日目の記事です。 もくじ Sound polymorphic type inference for objects または私は如何にして心配するのを止めて静的に型付けされたオブジェクト指向言語を愛するようになったか Covariance and Contravariance: Conflict without a Cause 共変と反変: 理由無き対立 What is Object-Oriented Programming? バック・トゥ・ザ・オブジェクト・オリエンテッド・プログラミング Sound polymorphic type inference for objec
Input Subsystemで何ができるのか Input Subsystemを使うと次のようなことができます。 キーボードやマウスをカスタマイズする 沢山(4つ以上)ボタンの付いたマウスや、マルチメディアキーの付いたキーボードを扱う 各種ゲーム用コントローラーを扱う 複数のマウスやキーボードからの入力を区別して扱う 仮想的なマウスやキーボードを作り、操作の自動化をする 必要なソフトウェア Input Subsystemを使うにはバージョン2.2以降のカーネルが必要となります。 ただ、Linux 2.4以前のInput SubsystemはLinux 2.6のものととやや異なっており、2.6用に書いたコードはそのままでは動きません(運が良ければ動くこともある)。また、Linux 2.4のInput SubsystemはPS/2マウスが扱えなかったり、標準ドライバでの処理を抑制できないなど制
これらの2つの表の中身は次のような意味です: 定数 演算は(高速な)定数時間かかります。 実質定数 演算は実質的に定数時間かかりますが、ベクタの長さやハッシュキーなどの仮定に依存します。 償却定数 演算は償却定数時間かかります。演算の呼び出しはより長い時間かかる場合がありますが、大量に呼び出されれば演算1回あたりは平均で定数時間しかかかりません。 対数 演算はコレクションの大きさの対数に比例する時間かかります。 線形 演算はコレクションの大きさに比例する時間かかります。 - 演算はサポートされません。 最初の表では列型—不変なものも可変なものも—を以下の演算で処理しています: head 列の最初の要素を選択する。 tail 最初の要素以外からなる新しい列を作成する。 apply 添字付け 更新 不変な列に対しては(updatedによる)関数的更新で、可変な列に対しては(updateによる)
この文書はナビゲーションの補助のためにフレームを利用しています。 このブラウザはフレームの利用をサポートしていないようですが、 <a target="_top" href="collections_0.html">非フレーム版</a>にアクセスできます。
このページを最初にブックマークしてみませんか?
『www.tatapa.org』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く