タグ

langに関するmitsuki_engawaのブックマーク (72)

  • 『8bit CPUのBASIC 処理系』

    8bit CPUの BASIC 言語の処理系 8080の Palo Alto Tiny BASIC 日で「8080 2K BASIC」としてすごく有名。 Li-Chen_Wang 氏が作者。 米DDJ誌にソースが載った。 東大の石田晴久先生が流行らせた。 日のASCII誌にも「東大版」として、アドレスをリロケートしたもののソースが載った。ソース・リストといえども、実は、アセンブル後のリスティング・ファイルだったので、ソースの横に16進のアセンブル結果が併記されていて、便利であった。(そっちを打ち込んで使った人も多かった) IOのソノシートにもなったか? 僕もソースを打ち込んで使っていた。 乗算は加算を繰り返す。計算途中のオーバフロー検出のためではないかと、いう優しい意見も聞いたことがあるが、多分、手抜き。除算も同様。 オーバフロー・フラグを持たないCPU(8080など)での、二の補数の

    『8bit CPUのBASIC 処理系』
  • プログラミング言語の進化の方向 - 世界線航跡蔵

    セキュリティ&プログラミングキャンプ のBoFで、笹田さんがやってたセッションで話したことがある。言語の進化はベストプラクティスの取り込みにある、と。 ベストプラクティス取り込みの歴史 計算可能である事柄を計算するだけが問題であるなら、チューリング完全な言語なら何でも良いということになるし、不完全な言語は出る幕すらない。ラムダ計算からの自然なマップを考えるならS式で書いて何か実行すれば良いんだし、最小のプリミティブから出発するのが目的ならLazy Kなんかもいいかもしれない。 でも、工学的要請からは、計算可能関数が等しく計算の対象となるわけではない。そして、ある種の計算の傾向、パターンに対して「こうすればいい」「こう考えればいい」「こう設計すればいい」というベストプラクティスが生まれてくる。プログラミング言語の歴史を眺めていると、経験の中から立ち現れるベストプラクティスを取り込んだものが多

    プログラミング言語の進化の方向 - 世界線航跡蔵
    mitsuki_engawa
    mitsuki_engawa 2009/09/22
    「言語の進化はベストプラクティスをサポートするためにあるんじゃなかろうか」
  • 開発コアメンバが語るRubyの今とこれから(前編) - @IT

    Ruby 1.9は移行準備オッケー @IT yuguiさんは、2009年2月のDeveloper's Summitの講演で、そろそろRuby 1.8系から1.9系への移行を始めるべきだと主張されてましたね。 園田裕貴氏。裕貴のピンイン表記である「yugui」のハンドル名で知られている。Ruby 1.9系統リリースマネージャで、Rubyコミッタ。1981年生まれ。著書に『初めてのRuby』(オライリージャパン)がある。最近はRailsアプリケーションをよく書いているという yugui ええ、一般のRubyユーザーはRuby 1.9への乗り換えは慎重にという立場の人もいますけど、私はそろそろ移行を考える時期だと思います。 @IT もう1.9に移行してもオッケーだと。 yugui もう根的な仕様が変わることはないという意味でオッケーです。2007年12月に出た1.9.0は、仕様が煮詰まっていな

  • 青木峰郎『ふつうのコンパイラをつくろう』の目次がやばいのでサイン会@RubyKaigiのお知らせ - 思っているよりもずっとずっと人生は短い。

    (7/22追記:ふつパイラのサポートページができていました。下記よりもサポートページの方が確実かと思うので、そちらをどうぞ。) 青木峰郎先生が3年の歳月を費やしてついに完成させた労作『ふつうのコンパイラをつくろう』、RubyKaigi2009で先行発売されているのはみなさんご存知というか、もちろん来場されたみなさんはすでに購入済みかと思うのですが、買いそびれてしまった方のために、とある信頼できる情報筋から目次のデータをゲットいたしました。以下に転載いたします。 中身についてはあえて多くは語りませんが、構文解析からアセンブラ生成と最適化を終えて、その後に「第4部 リンクとロード」があるのが注目だそうです。ELFの話から位置独立コードの話まで、「そこまでやるか」もきっちりフォローするのが青木先生の「ふつう」の「ふつう」たるところと言えましょう。読んでないけど。 そして明日は12:00からRub

    青木峰郎『ふつうのコンパイラをつくろう』の目次がやばいのでサイン会@RubyKaigiのお知らせ - 思っているよりもずっとずっと人生は短い。
  • tokuhirom blog

    mitsuki_engawa
    mitsuki_engawa 2009/05/12
    「parrot vm のバイトコードファイルである .pbc ファイルから、executable なファイルをつくれる」
  • るびま

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

  • iPhoneでC#アプリが審査に通るワケ OSS実装「Mono」で広がる.NETの応用 − @IT

    2009/01/29 iPhone向けにC#で書かれたゲームが40以上存在する――。2009年1月7日付けのブログ投稿で、こんなにわかに信じられない現象を伝えるのは、メキシコ出身のオープンソース開発者、ミゲル・デ・イカザ(Miguel de Icaz)氏だ。iPhoneアプリケーションの開発といえば、アップルが提供するSDKに含まれるObjective-Cを使うか、Webブラウザ上でのみ動作するJavaScriptで実装するかのいずれかだった。 C#のような実行時にランタイム(.NET Framework)を必要とするプログラミング言語は、iPhoneでは使えない。なぜなら、任意のコードを実行できるランタイムを配布パッケージに含めることを、セキュリティ上の理由からアップルが禁じているからだ。 ではなぜ、C#アプリケーションが審査に通るのか? この背後には、オープンソースプロジェクト「Mo

  • mixi Engineers’ Blog » Lua on Tyrant: DBサーバにLLを組み込む

    遅めの夏休みで那須塩原に行ってきたmikioです。牧場でアルパカに触ってきたのですが、めちゃかわいかったです。さて今回は、Tokyo Tyrant(TT)にスクリプト言語Luaの処理系を組み込んで使う方法について解説します。 つか、Luaって何? Lua(公式サイトによると「るーあ(LOO-ah)」と発音)という言語の名前は聞いたことがあっても、数あるマイナー言語のひとつと思って特に気にかけていない人も多いと思います。私もそうでした。しかし、今では、C言語使いの第2言語・第3言語として使うにはとても有望な言語だと思っています。 Luaに関する日語の情報はまだ多くはないのですが、以下のサイトを順に読むとだいたいの雰囲気が掴めると思います。 Lua で組んでみる Lua 5.1 リファレンスマニュアル Luaは言語仕様が小さいので、とても習得しやすいです。上記のリファレンスマニュアルだけ読め

    mixi Engineers’ Blog » Lua on Tyrant: DBサーバにLLを組み込む
  • もう flex 使わない、これからは re2c - ひげぽん OSとか作っちゃうかMona-

    flex & bison をやめて re2c & bison にしたらパーサが速くなった。re2c は UTF32 の入力に対応しているので非常にすっきり書けるし設計も歪まない。 re2c is a tool for writing very fast and very flexible scanners. Unlike any other such tool, re2c focuses on generating high efficient code for regular expression matching. re2c は flex とは互換がなく独自のマクロなどを定義しなくてはいけないので注意。サンプルとドキュメントの少ないのもマイナスポイント。 それこそ UTF32 を利用している例なんて見つけられなかった。 re2c で多分難しいのは YYFILL (flex でいうところ

    もう flex 使わない、これからは re2c - ひげぽん OSとか作っちゃうかMona-
    mitsuki_engawa
    mitsuki_engawa 2008/09/19
    字句解析器
  • 本を読む bashでGrassをキメたら悪酔いしたwww

    ,r;;;;ミミミミミミヽ,,_ ,i':r"    + `ミ;;, __,、           ≡     彡        ミ;;;i 〃ニ;;::`lヽ,,_           ≡  彡 ,,,,,、 ,,,,、、 ミ;;;! 〈 (lll!! テ-;;;;゙fn    __,,--、_  ..   ,ゞi" ̄ フ‐! ̄~~|-ゞ, ≡ /ヽ-〃;;;;;;;llllll7,,__/"  \三=ー"."ヾi `ー‐'、 ,ゝ--、' 〉;r'  ≡  bashは自分を評価することができるんです >、/:::/<;;;lllメ   \ヾ、  ヽTf=ヽ  `,|  / "ii" ヽ  |ノ j,, ヾて)r=- | ヾ:   :ヽ;;:     | l |  l  ''t ←―→ )/イ^    ≡ awkとは違うんです ,イ ヽ二)l(_,>" l|    ::\;::    |

    mitsuki_engawa
    mitsuki_engawa 2008/09/16
    「シェルスクリプトはLispの一方言です」w
  • yukobaのブログ

    yukobaのブログ

  • Lisp 50歳

    織田信長の 人間五十年 下天のうちを比ぶれば 夢まぼろしの如くなり は有名だ. ところで最近計算機のまわりで50年を迎えるものが目立つ. パラメトロン計算機 PC-1 は今年3月26日に完成50年を祝った. 来年1月のプログラミング・シンポジウムは第50回だ(49年ということ). 同じく1960年に設立された, 情報処理学会も50周年の事業を準備中と聞く. ところで今度は年10月20日に, Lisp50歳の誕生日を祝うというニュースが来た. 計算機に比べて, プログラム言語はいつが誕生日か判定が難しいところだ. 上のニュースによると, 1958年10月にMcCarthyが発表した論文にLISPという名前が始めて使われたとある. 20日というのは, 丁度そのころOOPSLAが開催されているかららしい. McCarthyのLispの論文といえば, Recursive Functions of

  • ブラウザでお絵描きプログラミング! Processing.js 登場! - IT戦記

    はじめに 今日、 jQuery の作者として有名な John Resig さんが Processing.js という JavaScript のライブラリを公開しました。 John Resig - Processing.js このライブラリを使うと、比較的簡単に以下のようなグラフィックスやアニメーションを書くことができるようになります。 というわけで、公開されたばかりのこのライブラリを簡単な使い方から詳しい使い方までとことん掘り下げてみたいと思います。 Processing.js 概要 まず、 Processing.js とは何かという話をします。 Processing.js とは、ブラウザで Processing というプログラミング言語を実行する JavaScript のライブラリです。 では、 Processing とはどのようなプログラミング言語なのでしょうか。 Processing

    ブラウザでお絵描きプログラミング! Processing.js 登場! - IT戦記
  • 米Borland、CodeGearを売却 | 経営 | マイコミジャーナル

  • プロトタイプベースの誤解 - Smalltalkのtは小文字です

    クラスベースのOOとプロトタイプベースのOOで決定的に違うのは、プログラムを動かしている最中にオブジェクトが出来ること、すなわちメソッド(method)を追加したり再定義したりできるかだ。 404 Blog Not Found:タイプ・クラス・プロトタイプ - OOの語彙 これはひどい。w オブジェクトに対して動的(実行時)にメソッドやインスタンス変数を追加できることと、“プロトタイプベース”においてオブジェクトがそれが属するクラスによらず独自のメソッドやインスタンス変数を持てることとは別の話です。 あらためて、「プロトタイプベース」という用語自体に問題が多いことを実感させられる記事でもありますね。個人的には、クラスを用いないオブジェクト生成手法の話でないのならば(つまり、「プロトタイプの複製でオブジェクトを生成する」ことが話の筋でないならば)「プロトタイプベース」ではなく、「インスタン

    プロトタイプベースの誤解 - Smalltalkのtは小文字です
  • はてなブログ | 無料ブログを作成しよう

    顔に見える?最近「送水口」が気になるという話 「送水口」が気になる今日この頃 最近街中で気になる存在、それがこの「送水口」です。地上のフロアが7階以上あるビルなど、一定の条件を満たした建築物には設置が義務付けられているもので、火事が発生したフロアにただちに水を送るために使われるものです。ポンプ車…

    はてなブログ | 無料ブログを作成しよう
  • ちょっと草植えときますね型言語 Grass

    _, ._ ( ・ω・) んも〜 ○={=}〇, |:::::::::\, ', ´ 、、、、し 、、、(((.@)wvwwWWwvwwWwwvwwwwWWWwwWw wWWWWWWwwwwWwwvwWWwWwwvwWWW 作ってみたwwwww とりあえず公開wwwwwwwっうぇ 日語版はてきとーです.きっと英語版のほうが詳しいです. 実装 インタプリタ Interpreter written in Standard ML (accept US-ASCII only) by UENO Katsuhiro Interpreter written in Ruby by UENO Katsuhiro Interpreter written in ニコスクリプト Interpreter written in Prolog by zick Interpreter written in Java b

    mitsuki_engawa
    mitsuki_engawa 2008/03/24
    あとで植える。
  • Java が使いにくいのは静的だからではない - kwatchの日記

    Java が使いにくい言語であるというのは、世界中の LL ファンが皆思っていることだろうから改めていうことでもないけど、使いにくいのは静的言語だからというのは間違っている。Java が使いにくいのは単に Java の設計者のセンスが悪かっただけであり、静的言語のせいではない。 たとえばこんなコード。 public Map<String, List<String>> example() { List<String> list = new ArrayList<String>(); list.add("foo"); list.add("bar"); list.add("baz"); Map<String, List<String>> map = new HashMap<String, List<String>>(); map.put("names", list); return map; }

    Java が使いにくいのは静的だからではない - kwatchの日記
    mitsuki_engawa
    mitsuki_engawa 2008/03/06
    最近のJavaってこんななのか、C++かとおもった……。
  • codepad

    codepad is an online compiler/interpreter, and a simple collaboration tool. Paste your code below, and codepad will run it and give you a short URL you can use to share it in chat or email. Language: C C++ D Haskell Lua OCaml PHP Perl Plain Text Python Ruby Scheme Tcl

    mitsuki_engawa
    mitsuki_engawa 2008/03/05
    system callレベルでsandboxになってるぽい?
  • Lua 5.1 リファレンスマニュアル

    by Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes Copyright © 2006 Lua.org, PUC-Rio. All rights reserved. 0 - 日語訳について この文書は、 Lua 5.1 Reference Manual を原著者に無断で日語に訳した、非公式の Lua 5.1 リファレンスマニュアルである。 誤訳の指摘は歓迎するので、yuno@users.sourceforge.jp へよろしく。 1 - 概要 Luaは拡張プログラミング言語である。 データ記述機能を持ち、汎用の手続き型プログラミングをサポートするようデザインされた。 オブジェクト指向プログラミング、関数型プログラミング、データ駆動型プログラミングもサポートしている。 Luaは、パワフルで軽いスクリプト