Skip to content

Instantly share code, notes, and snippets.

@ksomemo
Last active June 6, 2017 10:39
Show Gist options
  • Save ksomemo/99f9e466599a3758b12e to your computer and use it in GitHub Desktop.
Save ksomemo/99f9e466599a3758b12e to your computer and use it in GitHub Desktop.
プログラミング(言語)要素まとめ

プログラミング(言語)要素まとめ

気になることを並べてみた

REPL

  • Web Try系
  • 処理系インストールしてローカルで実行
  • それもなければPrint処理を覚える

スカラ数値

  • 整数
  • 少数
  • 分数
  • 虚数

演算

  • 四則演算
  • 剰余

変数

  • 宣言
  • 型宣言
  • 代入
  • 型推論
  • 再代入

論理値/論理式

  • 同一性
  • 短絡的評価

文字

  • 文字と数値
  • 文字と文字列
  • 文字列とリスト
  • 文字列処理
  • マルチバイト文字
  • symbol/atom

低レベル層

  • byte
  • bit
  • バイナリ

定数

  • スカラー型
  • 列挙型

制御

  • 文 or 式
  • if then else
  • switch
  • パターンマッチ
  • 条件演算子

コレクション

  • リスト
    • リスト内包表記
  • 配列
    • index
    • 多次元
    • 行列
    • スパース
  • マップ
    • キー
    • キーの値
  • 集合
  • タプル
    • 分解代入,パターンマッチ?
    • 未使用明示変数
  • 遅延評価

繰り返し処理

  • for
  • foreach
  • while
  • 関数による再帰

関数

  • 引数
    • デフォルト引数
    • 可変長引数
  • 戻り値
    • return明示
    • 複数返却
  • 高階関数
    • 引数として
    • 戻り値として
  • ラムダ式
    • 変数へ
    • 変数束縛
    • map filter fold
  • その他
    • カリー化された関数
    • 部分適用

ユーザー定義型

  • null/nil/undefined
  • Maybe/Option/Nullable
  • データ型のalias
  • 構造体
    • 基本型
    • 参照
    • 構造体のネスト
  • クラス指向オブジェクト
    • シングルトン
    • 値オブジェクト
    • 継承
    • オーバーライド
  • インターフェース
    • レシーバーの有無
    • trait(デフォルト実装)

モジュール

  • ディレクトリ構造
  • import
  • export
  • オートロード

メタプログラミング

  • ジェネリック
    • 型総称として
    • 型クラスとして
  • 演算子オーバーロード
  • リフレクション

ファイル

  • 入力
  • 出力
  • リソース管理

エラー処理

  • エラー返却
  • 例外
  • スタックトレース
  • dump
  • リトライ

非同期

  • プロセス
  • スレッド
  • fork
  • メッセージパッシング
  • sync/wait/継続
  • 解放

ネットワーク

  • ソケット
  • ストリーム

エコシステム

  • 自動化
    • ビルドシステム
  • ライブラリリポジトリ
  • テストフレームワーク
    • UnitTest
    • BDD
    • QuickCheck
  • ドキュメントとドキュメントコメント
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment