この文書はSmalltalk-80 実装のひとつであるGNU Smalltalk について記しています。 従って他のSmalltalk 実装とは異なる部分もメソッドや文法の点などでいくつか見受けられます。 また巷の入門書、専門書ほどの丁寧で具体的な解説はしていません。 しばしば専門的な話というのは初心者にとってとても難しいものであったりしますが、筆者自身がGNU Smalltalk を学んでいった初心者の視点に基づき説明していきますが、 最低でも1 つの手続き型プログラミング言語を学んだ人を対象としています。 特にC++, Java, Python, Ruby を習得した方であればオブジェクト指向には絶対と言っていいほど触れているはずなので理解がしやすいでしょう。 この文書はSmalltalk 初心者である筆者が記したものであるので、あくまでひとつのコラム程度に読んで頂けると幸いです。 と
Copyright © 2019 Angular Tutorials, Coding Tutorials and more | Powered by Astra
Squeak Smalltalk の #largePrimesUpTo:do: をほぼそのまま Scala に書き換えてみました。手元の環境では残念ながら 1<<30 ですと OutOfMemoryError になるので少し減らして 1<<29 に収まる全素数(28192750個。最大は 536870909)の生成を試したところ、おおよそ Squeak4.2 CogVM の倍速といった感じでした(1.8GHz Core i7 で Squeak の 27秒に対し Scala は 14秒)。限られた Scala の知識で機械的に変換したものなので Scala をよく知っている人に手を入れてもらえれば軽く10倍くらいには高速化できるとおもいますので後はよろしくお願いします。w 他の言語への移植もチャレンジしてみたいですね。 object PrimesUpTo extends App { def
わたし的棚ぼた一万円選書 急に千葉さんに手渡された封筒、開けてみたら1万円札が1枚。何ごとかと思えば、同期の出張を代わったお礼をもらったらしい。 「葵はワンオペで育児してくれたから」と半分わけてくれました。 泡銭の1万円 これはもう、わたし的1万円選書をしろという思し召しなのでは……
あるいは、いかにしてここ数年来の懸案だった n fizz buzz 形式のメソッドコールによる FizzBuzz をいわゆる“黒魔術”(―を通り越してもはや禁じ手の類)を用いて実現したか。 オーソドックスに―ということであれば n fizz, n buzz ifEmpty: [n] が Smalltalk での FizzBuzz のベストアンサーだと思っている私ではありますが、それとは別に、考え得るもっともシンプルな式である n fizz buzz と書くだけで同様のことを実現できないものかということも定期的に巡ってくるブームのたびに模索し続けていて、なんとか n fizz buzz value という似た形まではもってこれてはいたものの、最後の余計なメソッドコールをどうにも無くすことができなくて行き詰まっていた、というのがこれまでの流れです。で、今回はその最後のコールをかなり無理矢理では
コマツ屋製麺所の上層階あたりで撮影されたと思われる土石流の映像に衝撃を受けた方も多いのではないでしょうか。 この映像は、テレビのニュース映像でも使われていましたが、人が巻き込まれている可能性が非常に高くとても心配です。 投稿...
ネタバレ注意。 問題となっている画像は次のもの。問題文はテキストを記載している。 <問題> This problem can be solved by pre-school children in 5-10 minutes, by programmers -in 1 hour, by people with higher education… well, check it yourself! (この問題は就学前の子供であれば5〜10分、プログラマーであれば1時間以内で解けます。高等教育を受けた人間であれば…自分自身で試してみて!) http://ict.pken.com/2012/02/facebook_sansu/ これは Squeak Smalltalk ならではの特徴を活かせるいい問題なんじゃないかなぁーと思えたのでソルバー?(というよりはネタは割れているので単なるデコーダーか)を書
思いは言葉に。 はてなブログは、あなたの思いや考えを残したり、 さまざまな人が綴った多様な価値観に触れたりできる場所です。
来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…
先週末の Ruby勉強会@札幌-22 にオーストラリアから参加されたアンドリュー・グリムさん の発表で知った Ruby の技。 本日の収穫 #ruby: [1,2,3].map(&1.method(:+)) => [2,3,4]。 Haskellで言う所の map (+1) [1,2,3]。 @tmaeda この発想はなかった。w その場で Smalltalk でも!というリクエストはいただいたのですが、残念ながら Smalltalk のメッセージングを介したメソッドコールには、Ruby のバウンドメソッドや Haskell などの部分適用のような概念がないので再現できませんでした。 ちょっとくやしかったので、こんなふうなそれっぽく見えるものを考えてみました。 #(1 2 3) collect: #(+ 1) "=> #(2 3 4) " 仕込みは簡単。SequenceableCollec
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く