タグ

programmingに関するclouderのブックマーク (41)

  • Scala - Wikipedia

    Scala(スカラ、SKAH-lah[3])はオブジェクト指向言語と関数型言語の特徴を統合したマルチパラダイムのプログラミング言語である。名前の「Scala」は英語の「scalable language」に由来するものである。 主にJavaプラットフォーム(Java仮想マシン)上で動作し、既存のJavaのプログラムと容易に連携させることができる。 対応プラットフォーム Scala - Javaプラットフォーム Scala.js[4] - Scala から JavaScript へとトランスパイルする。 Scala Native[5] - LLVM を使用し、マシンネイティブの実行ファイルを出力 また、過去には下記のプラットフォームもサポートしていたが、現在は開発が中断している。 .NET Framework[6] Java Platform, Micro Edition CLDC Scal

    Scala - Wikipedia
  • 転置インデックスを実装しよう - mixi engineer blog

    相対性理論のボーカルが頭から離れないmikioです。熱いわっふるの声に応えて今回はTokyo Cabinetのテーブルデータベースにおける検索機能の実装について語ってみたいと思います。とても長いのですが、最後まで読んだあかつきには、自分でも全文検索エンジンを作れると思っていただければ嬉しいです。 デモ モチベーションをあげていただくために、100行のソースコードで検索UIのデモを作ってみました。Java 6の日語文書を対象としているので、「stringbuffer」とか「コンパイル」とか「倍精度浮動小数」とかそれっぽい用語で検索してみてください。 インデックスがちゃんとできていれば、たった100行で某検索エンジン風味の検索機能をあなたのデータを対象にして動かすことができます。ソースコードはこちら(テンプレートはこちら)です。 でも、今回はUIの話ではないのです。ものすごく地味に、全文検索

    転置インデックスを実装しよう - mixi engineer blog
  • Emacs + GDB チートシート - higepon blog

    Emacs + GDB を利用したいならば、何よりも GNU Emacs Manual: Debuggers(英語) を読むことを強くおすすめします。 和訳も存在しますが内容が古く、マウスを利用した操作やグラフィカルな機能についての記述がありませんでした。 マニュアルを読んで理解したあとは実践で覚えていくわけですが、以下にまとめたチートシートを利用すれば時間が節約できるかもしれません。 もしも便利な機能に関して漏れがあれば是非教えてください。 .emacs ;;; GDB 関連 ;;; 有用なバッファを開くモード (setq gdb-many-windows t) ;;; 変数の上にマウスカーソルを置くと値を表示 (add-hook 'gdb-mode-hook '(lambda () (gud-tooltip-mode t))) ;;; I/O バッファを表示 (setq gdb-use

    Emacs + GDB チートシート - higepon blog
  • The Programming Language Lua

    Official website of the Lua language

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • XIBファイルをObjective-Cのソースコードに変換するツール - 24/7 twenty-four seven

    nib2objc akosma/nib2objc · GitHub 以下のように、パラメータにXIBファイルを指定すると、標準出力にコードが出力されます。 $ nib2objc WebView.xib > WebView.m このようなビューから下記のコードが出力されます。 XIBファイルをソースコードに変換する場合というのは、パフォーマンスのために、XIBファイルを使わないようにしたい場合がほとんどだと思うので、このコードをもってXIBファイルを置き換えるのは難しいです。 インスタンス変数やアクションの接続が無くなってしまうので、それらを再構築する手間を考えると、自分で書いた方が早いと思います。 ただ、ソースコードが公開されているので、工夫して改良すれば、便利なツールになりそうです。 UIBarButtonItem *view39 = [[UIBarButtonItem alloc] i

    XIBファイルをObjective-Cのソースコードに変換するツール - 24/7 twenty-four seven
  • コードポケット - アプリケーションをささっと作るコツ - (ひ)メモ

    誰に教えられたのでもないのですが、ぼくは冬眠前のリスのようにコード片を溜め込んでいます。 コード片とは、ライブラリにするほどまとまった大きさではない、数行〜十数行のコードのことで、溜め込んだコード片は、アプリケーションやツールを作るときに使っています。 例えば「Perlでメール送るのどう書くんだっけかな」とか「Pythonでファイル開いて全部読むのどう書くんだっけかな」とかというときに、溜め込んだ中からコード片をさっと取り出してコピペした後、なじむようにちょっと修正して使っています。 コードポケット コードを溜め込んでいるディレクトリをぼくは「コードポケット」と名付けていて、コード片を取り出すことを「ポケットからコードを取り出す」と呼んでいます。先日、知り合いが似たようなことを実践していて、その人は「コードスケッチ」と呼んでました。いい名前ですね。 ぼくの場合、コードポケットは ~/lan

    コードポケット - アプリケーションをささっと作るコツ - (ひ)メモ
    clouder
    clouder 2009/04/22
    これ用のサービスあったらいいなぁ。作ってみようかしら。
  • MacRubyとRubyCocoaの微妙な違い (1) : As Sloth As Possible

    MacRubyでBaconを調理する準備ができたので、早速Bacon焼くぜー超焼くぜー、と書き始めたんだけど、その前にRubyCocoaMacRubyの違いを比べてみたくなった。のでちょっと脱線。 # Namake.framework内にあるSloth.h #import @interface Sloth : NSObject { NSString *name; } - (NSString *)name; - (void)setName:(NSString *)aName; @end $ cat mrb_bacon.rb # coding: utf-8 require 'bacon' framework 'build/Release/Namake.framework' describe Sloth do before do @obj = Sloth.alloc.init end it '

    MacRubyとRubyCocoaの微妙な違い (1) : As Sloth As Possible
  • MacRubyとRubyCocoaの微妙な違い (2) : As Sloth As Possible

    MacRubyRubyCocoaの微妙な違い (1)の続き。 フレームワークの読み込み まず最初に違うのは、framework。これはRubyCocoaで書くと多分こんな感じ。 require 'osx/cocoa' def framework(name) OSX.require_framework name rescue bundle = OSX::NSBundle.bundleWithPath(name) bundle.load end MacRubyのframeworkは名前じゃなくてパスを渡してやるとそのFrameworkを読み込んでくれるけど、OSX::require_frameworkは名前しか受け付けない、つまりパス上にあるFrameworkしか探さない。ので、任意のパスにあるFrameworkを動的に読み込みたいときは、NSBundleのクラスメソッドを使ってバンドルのオ

    MacRubyとRubyCocoaの微妙な違い (2) : As Sloth As Possible
  • MacRubyとRubyCocoaの微妙な違い (3) : As Sloth As Possible

    MacRubyRubyCocoaの微妙な違い (1)とMacRubyRubyCocoaの微妙な違い (2)の続き。 クラスをいじってみる またまた抜粋 # MacRubyit 'Objective-Cのクラスを書き換えられること' do lambda { eval 'class Sloth; def name; "nisefaultier"; end; end' }.should.not.raise obj = Sloth.alloc.init obj.name.should.be.eql "nisefaultier" # @obj.name.should.be.eql "nisefaultier" end # RubyCocoait 'Objective-Cのクラスを書き換えられること' do lambda { eval 'class Sloth; def name; "ni

    MacRubyとRubyCocoaの微妙な違い (3) : As Sloth As Possible
  • C言語ポイント学習 (文字列と2次元配列)

    C言語初心者向けのページです。 づまづきやすい、「ポインタと配列」についてまとめてみました。 内容は少ないですが随時ふやしていきたいと思っています。 配列とポインタ(その1) 配列とポインタ(その2) 文字列・ポインタと配列 文字列と2次元配列 文字列の比較 C言語で文字列の配列を表現するにはどうしたら良いでしょう? ここでは、下記ようなの名簿を管理するプログラムを想定して 話を進めていきます。 ・名簿 ┏━━━━━━━━━━━━━━━━━━━━━┓ ┃Asano ┃ ┃Fukushima ┃ ┃Furuichi ┃ ┃Hirao ┃ ┃Nanbo ┃ ┗━━━━━━━━━━━━━━━━━━━━━┛ 文字の配列の配列 上記の名簿(と言っても名前しかないですが。)を配列を使って表現すると 以下のようになります。 char Meibo[5][10] = { "Asano", "Fukus

  • LLVMを勉強中 : As Sloth As Possible

    ここ数日、LLVMについて少し勉強している。そもそもなんでLLVMを触り始めたかというと、Twitter上で「今コンパイル欲求に駆られている」と(割と何も考えずに)つぶやいたところ、 「じゃあDTコンパイルしようぜ」 srd! でもあれコンパイラとは名ばかりでぶっちゃけ文字列をRubyコードにtranslateしてるだけだったりするね 「DTパーサを改良してLLVMにブリッジして、クロスプラットフォーム環境で高速に動作するDT処理系にするといいよ」 何その無駄に敷居高いお仕事!誰得!でもなんか面白そう! というやりとりがあって、じゃあ当に誰が得するのかわからないけど面白そうだからLLVMをバックエンドで使ってesotericがサポートしてるコードからバイナリを生成するコンパイラ作ろうぜ、という流れになったから。実にLLVMの無駄遣いですね。この記事ブクマするときは「LLVMの無駄遣い」っ

    LLVMを勉強中 : As Sloth As Possible
    clouder
    clouder 2009/03/10
    LLVMのLLってLightweight LanguageだとおもってたYO
  • Whitespace

    What is Whitespace? Most modern programming languages do not consider white space characters (spaces, tabs and newlines) syntax, ignoring them, as if they weren't there. We consider this to be a gross injustice to these perfectly friendly members of the character set. Should they be ignored, just because they are invisible? Whitespace is a language that seeks to redress the balance. Any non whit

  • プログラミング言語「DT」 : As Sloth As Possible

    最近「Rubyで作る奇妙なプログラミング言語 ~Esoteric Language~」を読んで、ついカッとなって言語処理系を作ってみた。それも、チューリング完全な、物の(ry まぁ、Whitespaceのトークンを置き換えただけだけど。 一応、上記のに習って、ソースコードをWhitespaceの命令セットを持つ中間言語にコンパイルしてVMで実行する形にしてみた。あとはパースする部分を適当に置き換えたコンパイラを作ればそれっぽいのが簡単に作れる。んで、いくつかネタ言語を作ってみたんだけど、その中でも一番しょーもないのがDT。DTでは次のようなソースを実行することができます。("Hi!\n"を出力する) 「○○くんて、もしかして童貞?」 「どどど童貞ちゃうわっ!どど童貞ちゃうわっ!どどど…童貞ちゃうわっ!」 「えー。その慌てっぷりが余計怪しなぁw」 「…どどどどど童貞ちゃうわっ!童貞ちゃう

    プログラミング言語「DT」 : As Sloth As Possible
  • https://srad.jp/story/09/02/20/0716223/

  • sizeof演算子

    せりか式 - C 言語チュートリアル - sizeof演算子 sizeof演算子について検索してくる人が多いようなので,真面目にsizeof演算子についても書いておくことにします. 簡単に言うと,sizeofに渡された型や変数のメモリサイズを調べるものです. sizeof演算子は2種類の使い方があります. sizeof(型) sizeof 変数や定数,あるいは式など 前者の型を与える方は特に悩む必要は無いと思います. 単に指定した型が利用するメモリサイズを返すものです. 問題は,後者の変数や定数を渡す方です. sizeofに変数を渡した場合,その変数名で確保されているメモリサイズを返します.

  • セマフォを使った排他制御

    排他制御とは、あるメモリやある操作を、同時に複数のプログラムからアクセスあるいは実行させないようにするための処理です。 プロセス間で排他制御をするには、グローバル変数は使えません。グローバル変数はプロセスごとにもつものだからです。 共有メモリの1バイトをフラグとして使ったりすると、フラグを立てた瞬間に2つ以上のプロセスが同時に 走ってしまう危険性があります。ファイルを作成し、ファイルが存在するか否かをフラグに使っても同じような 問題があります。 セマフォとは以上のような問題点を解決するための仕組みです。セマフォはOSが用意するグローバルなフラグのようなもので、 そのフラグを待っているプロセスが複数あったとしても、セマフォから実行の許可が得られるプロセスを1つ に制限させることができます。 サンプルプログラムを考えます。このプログラムは親が500バイト共有メモリを作成します。 そして、for

    clouder
    clouder 2009/01/07
    セマフォについて
  • はじめよう!Red5プログラミング

    Red5プログラミングをはじめよう 前回(http://www.thinkit.co.jp/article/152/2/)は、Red5をインストールして同梱(どうこん)されているデモアプリを見ていくことでRed5を使ったアプリケーションのイメージをつかんでいただきました。今回は、実際にプログラミングしていきます。Red5を使った一歩進んだFlashの世界へふみだしてみましょう。 まずは必要なものをそろえます。Red5はJavaで書かれたサーバーですので、サーバー側の実装はJavaになります。クライアント側はFlashですので、言語としてはActionScriptで書くことになります。 具体的に必要になるのは、クライアント側はおなじみのFlash CS3などのFlash IDEかFlex SDK、または、Flex Builderで行います。最低限のセットとしては無料で手に入るFlex SDK

  • 【コラム】Hello Worldコレクション (20) ネットワーククライアント編 - いろんな言語でソケットプログラミング | エンタープライズ | マイコミジャーナル

    ネットワーククライアントのHello World 第20回は、ネットワーククライアントのHello Worldです。これは、特定のホストの特定のポート番号にTCPで接続し、そこから受信した文字列を表示するプログラムです。具体的には、第12回で作成したネットワークサーバのプログラムに接続し、サーバから送られてくるHello Worldの文字列を表示するようなクライアント側のプログラムを作成します。 第12回では、サーバ側の動作をテストするため、クライアント側にはtelnetコマンドまたはnc(netcat)コマンドを使いましたが、今回はそのクライアント側のプログラムを、各種言語で作成してみるという趣向です。 C言語の場合 まずはC言語からです(リスト1)。ここでは、エラー処理はあえて省略しています。クライアント側のプログラムでは、socket()でソケットを作成したあと、connect()で

  • 連載:目指せ!iPhoneアプリ開発エキスパート|gihyo.jp … 技術評論社

    運営元のロゴ Copyright © 2007-2025 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    連載:目指せ!iPhoneアプリ開発エキスパート|gihyo.jp … 技術評論社