Liminalは、不確実性を第一級オブジェクトとして扱うプログラミング言語です。確率的推論や不確実なデータの処理を自然に表現できるように設計されており、従来のプログラミングパラダイムを拡張します。
#computer-science
30 件
Wrenプログラミング言語のパフォーマンス特性について、ベンチマーク結果や最適化手法を紹介。軽量で高速な実行を目指す設計思想と、実際の性能測定データを提供しています。
このプロジェクトでは、コンピュータサイエンス学位の4年間分の講義ノート、課題、試験問題をLaTeXで組版し、850ページのPDFとしてまとめました。すべてのコードとLaTeXソースはGitHubで公開されており、学生や教育関係者が参考にできるリソースとなっています。
CS 244は、重要なネットワーク研究論文の結果を再現し、実験方法と結果の妥当性を検証することを目的としたスタンフォード大学のコースです。学生はオリジナルの研究環境を再構築し、実験を実行して結果を比較することで、研究の再現可能性と科学的厳密性について学びます。
This video explores how computer science can become a trap for intelligent individuals, potentially limiting their broader intellectual growth and career opportunities despite the field's technical demands and prestige.
This article explores programming languages that are considered "weird" or unconventional, examining their unique features and design philosophies that challenge traditional programming paradigms.
0から1の間の浮動小数点数を生成する方法について、Pythonのrandom.random()関数やNumPyのnp.random.rand()関数など、様々なプログラミング言語での実装方法を解説しています。これらの関数は、0以上1未満の一様分布に従う浮動小数点数を返します。
この1994年の書籍は、C言語を使用してコンピュータサイエンスの基礎概念を解説しています。データ構造、アルゴリズム、計算理論などの基本をカバーする古典的な教科書です。
この記事では、プログラミング言語Factorの作者であるSlava Pestovが、モノイドの概念とそのプログラミングにおける応用について解説しています。モノイドは結合的な二項演算と単位元を持つ代数構造であり、並列処理やデータ構造の設計など、実用的なプログラミングの文脈でどのように活用できるかを探求しています。
コンパイラがメモリに効率的にアクセスするための巧妙なテクニックについて学びます。これらのトリックは、プログラムのパフォーマンスを最適化するために使用されます。
プログラミングは数学的証明のように問題を解決するアルゴリズムの構築、コーディングはその解決策を形式言語で表現すること、ソフトウェアエンジニアリングは現実世界の問題を解決する製品を構築する包括的な活動です。多くの開発者はプログラミングを愛し、コーディングを楽しみ、ソフトウェアエンジニアリングを耐え忍ぶ傾向があります。
代数効果(Algebraic Effects)は、非同期処理や例外処理をより柔軟に扱うためのプログラミング概念です。これは単なる抽象的な理論ではなく、実際のコードで複雑な制御フローを簡潔に表現する方法を提供します。
JavaScriptの本質を理解するために、その構成要素とクロージャの概念について探求します。この記事では、JavaScriptのコアメカニズムと、それがどのように機能するかを明らかにします。
C言語入門
0.0C言語の基本概念とプログラミングの基礎について解説します。メモリ管理、ポインタ、制御構造などの重要な要素をカバーし、効率的なコード作成のための実践的な知識を提供します。
この講演では、リバースエンジニアリングの基本概念と実践的なアプローチについて紹介します。ソフトウェアやハードウェアの動作原理を理解し、解析するための技術とツールについて解説します。
ブートストラップは、ある言語のコンパイラをその言語自身で記述する手法です。これにより、自己完結的な開発サイクルが可能になり、言語の進化と移植性が促進されます。歴史的にはLispやCなど多くの言語で採用されてきた重要な概念です。
4ビット浮動小数点FP4
2.0かつて浮動小数点数は32ビットで格納されていたが、その後64ビットが標準となった。C言語ではfloatが32ビット、doubleが倍精度を指すが、Pythonでは単にfloatが倍精度を意味する。現在では4ビット浮動小数点FP4のようなより小さなフォーマットも登場している。
パリについて
1.0パリは、タスマニア州ホバートを拠点とするコンピューター科学者、ゲームデザイナー、作家、アーティストです。Secret Labの共同創設者であり、『Night in the Woods』や『Yarn Spinner』などの開発に関わり、20冊以上の技術書を執筆するなど、多岐にわたる活動を行っています。
楽しいパズルゲームで、グラフ探索アルゴリズムを学びながら遊べます。グラフ構造を探索するアルゴリズムの概念をゲーム形式で体験できます。
ソートアルゴリズムの仕組みを理解するためのインタラクティブなゲームです。あなたのスキルはどのくらい優れているでしょうか?
This article explores the concept of "driving compilers" - the process of controlling and optimizing compiler behavior to achieve specific performance goals. It discusses various techniques and strategies for effectively guiding compiler decisions to produce better machine code.
Adaプログラミング言語におけるオブジェクト指向プログラミングの概念と実装方法について解説します。Adaの型システム、継承、ポリモーフィズムなどの機能を活用して、堅牢で保守性の高いソフトウェアを開発する手法を紹介します。
プログラマーが好むアイデアについて考察し、ガベージコレクションやオブジェクト指向プログラミングがなぜ「優れたアイデア」に含まれないのかを論じています。技術的な概念の本質的な価値についての洞察を提供します。
読みたいソフトウェア本
2.0著者が10年前に欲しかった本『Logic for Programmers』を執筆中であると述べ、ブログ記事よりも書籍の深い影響力に言及。さらに、設定管理、複雑なデータスキーマ、ソフトウェアエンジニアのためのコンピュータサイエンスなど、まだ存在しないが読みたいソフトウェア関連の書籍のアイデアを提案している。
コルーチンの哲学
1.0コルーチン全般についての考察、著者がコルーチンを好む理由、そしてそれらを使用し考える方法についての思考。コルーチンの本質的な価値と応用可能性を探る。
バブルソートが大嫌い
1.0バブルソートはひどいソートアルゴリズムであり、人々がそれを教えるのをやめてほしいという短い意見。効率が悪く、教育上の価値も限られている。
非決定性の天使と悪魔
2.0非決定性には「悪魔的非決定性」(常に最悪の選択をする)と「天使的非決定性」(常に最善の選択をする)の2種類がある。前者は形式手法で安全性検証に使われ、後者は計算複雑性理論やプログラミング言語で広く用いられる。NP問題は天使的非決定性を持つ多項式時間アルゴリズムで解ける問題として定義される。
「壁の向こう」を超えて
1.0先月の非周期タイル張りに関する有限状態トランスデューサーの記事の続編。有限状態トランスデューサーを用いた非周期タイル張りの手法について、さらなる考察と展開を探る。
パズルコレクションの作成中にグラフのループ検出を試みて犯したすべての過ちの歴史。著者が経験した様々な失敗例とその教訓をまとめています。
XOR
1.0論理演算子およびビット単位のXOR演算子の入門、その用途、そしてそれらが導く高度なトピックについての紹介。XORは排他的論理和として知られ、プログラミングや暗号化、エラー検出など様々な分野で重要な役割を果たします。