タグ

ブックマーク / qiita.com/outlandkarasu@github (6)

  • 全ての開発者が学ぶべき1つの言語 - Qiita

    「どの言語を学ぶべきか」という議論が都内各所で流行しているようなので、FPGA論理合成の間に暇だったので私も書いてみることにしました。 1.D言語 D言語はサーバーサイドのアプリケーション開発をリードできる言語です。 モバイルゲームAndroidアプリの開発、そしてエンタープライズWebアプリケーションの開発まで、非常に大きなマーケットに大胆かつ冒険的な野心的大挑戦が行えます。 頑強でスケーラブルなサーバーサイドアプリケーションを開発したいなら、あなたはD言語を学ぶべきです。どのように複雑なシステムであってもD言語で書けますし、様々なツールやテクノロジー、そしてコミュニティのサポートを得ることができないこともないこともないかもしれません。少なくともソースコードは公開されています。 なぜD言語を学ぶ必要があるのでしょうか?D言語を使うことで、システムレベルの詳細事項やメモリ管理に手を入れる

    全ての開発者が学ぶべき1つの言語 - Qiita
  • D言語くんにもできるRaspberry Piベアメタルプログラミング - Qiita

    今回のソース はじめに D言語のver. 2.076から、-betterCオプションが追加されました。 言語仕様 Blog D as a Better C このオプションを使用すると、druntimeやPhobosはコンパイル時に参照されなくなり、ランタイムライブラリを使用するような機能は使えなくなります。 その代わり、コンパイル時のみで解決できるような機能は制限されません。 つまり、PhobosやC言語の標準ライブラリに依存していないD言語のサブセットを、コンパイラのチェックのもと使うことができます。 これを嬉しく思える人はたぶんごく一部ですが、以下のような場合に該当すると思われます。 OSやドライバなど、ランタイムライブラリを気軽に使用できない部分の実装 マイコンなどの組み込み機器向けのプログラミング リアルタイム性の高い箇所で、GCなどのオーバーヘッドのある言語機能を排除したい場

    D言語くんにもできるRaspberry Piベアメタルプログラミング - Qiita
    outland_karasu
    outland_karasu 2018/01/01
    書きました。
  • D言語で構文解析器をつくる(3) アブストラクト・シンタックス・クリスマスツリー編 - Qiita

    はじめに 前回までのあらすじ もうすぐクリスマスですね。 さて、前回まででPEGパーサー・コンビネーターを組み合わせ、解析結果に応じてアクションを実行するところまで辿り着きました。 今回は、解析結果をプログラムが処理しやすい抽象構文木(Abstract Syntax Tree = AST)を構築し、さらにはPEGによるPEG自身の構文解析まで行ってしまいます。 もくじ D言語で構文解析器をつくる(1) パーサー・コンビネーター編 D言語で構文解析器をつくる(2) セマンティック・アクション編 D言語で構文解析器をつくる(3) アブストラクト・シンタックス・クリスマスツリー編 (記事) 今回つくるもの PEG文法の文字列からPEGパーサー・コンビネーターを生成できるようにします。 以下は、PEGのPEG文法文字列からPEGのPEGパーサーを生成するPEGのPEGデモでPEG。 import

    D言語で構文解析器をつくる(3) アブストラクト・シンタックス・クリスマスツリー編 - Qiita
    outland_karasu
    outland_karasu 2014/12/25
    クリスマスプレゼントも兼ねて埋めました。
  • D言語で構文解析器をつくる(2) セマンティック・アクション編 - Qiita

    はじめに 前回までのあらすじ 禁じられた現代魔術言語「D」の封印を解き、簡単なパーサー・コンビネーターを作りあげたカラス。 それを手にいにしえの極悪大魔導士「EBNF」に挑みかかる! しかし、そこには巧妙な罠が張られていた……。 「うわわわわわー!!!」 EBNFが発生させた時空断層に引きずり込まれ、カラスは為す術もない。悲鳴だけを後に残して、スキマ次元の闇の中へ消えていく……。 ……そして、目を覚ますと、そこは何と1週間前の世界だった! もくじ D言語で構文解析器をつくる(1) パーサー・コンビネーター編 D言語で構文解析器をつくる(2) セマンティック・アクション編 (記事) D言語で構文解析器をつくる(3) アブストラクト・シンタックス・クリスマスツリー編 今回つくるもの とりあえず今回でできるもののデモです。 wcコマンドの実装です。 import std.array; impo

    D言語で構文解析器をつくる(2) セマンティック・アクション編 - Qiita
    outland_karasu
    outland_karasu 2014/12/15
    タイムトラベルメソッド使用
  • D言語で構文解析器をつくる(1) パーサー・コンビネーター編 - Qiita

    はじめに もくじ D言語で構文解析器をつくる(1) パーサー・コンビネーター編 (記事) D言語で構文解析器をつくる(2) セマンティック・アクション編 D言語で構文解析器をつくる(3) アブストラクト・シンタックス・クリスマスツリー編 今回つくるもの この記事では、簡単なPEGパーサー・コンビネーターを実装します。 こちらのデモのように動かせる物が出来上がります。 以下は、3桁ごとにカンマで区切られている数字(1,000とか1,000,000とか)のチェックを行う簡単なユニットテストです。 unittest { // 1以上の数字 alias rng!('1', '9') n1; // 0以上の数字 alias rng!('0', '9') n0; // カンマ区切り数字の先頭。最初の1桁は[1, 9]で、カンマの出てこない最初の3桁まで alias seq!(n1, opt!n0,

    D言語で構文解析器をつくる(1) パーサー・コンビネーター編 - Qiita
  • 徒手空拳で始めるD言語+SDL2.0入門ライフゲーム編 - Qiita

    はじめに D言語のプログラミングは、とても楽しいものです。 この記事では、D言語を使うとどんな感じなのか、どう楽しいのか、実際にライフゲームを作っていく過程を通して、紹介します。 C/C++Javaの経験が多少ある人なら、この記事をなぞって簡単にD言語版ライフゲームを作れると思います。 できあがりイメージ こんなものが出来上がる予定です。 ソースはこちらに置いてあります。 使用ツール 徒手空拳と謳った通り、使用ツールはこれだけです。 家DMD ver2.0.64 SDL2.0 IMPLIB (Windows限定。DLLからのlib作成に使用) 好きなエディタ 好きなシェルやコマンドプロンプト SDLとは SDLは、有名なオープンソースのゲーム用ライブラリです。 基的にはごく薄いC言語のラッパーAPIで、MacWindowsLinux・iOS・Androidといったプラットフォーム

    徒手空拳で始めるD言語+SDL2.0入門ライフゲーム編 - Qiita
  • 1