2008-06-01から1ヶ月間の記事一覧

PDF::Writer:Color::RGB#to_grayscale, #to_greyscale

require 'color' p [Color::RGB::Red, Color::RGB::Red.to_grayscale] p [Color::RGB::Green, Color::RGB::Green.to_grayscale] p [Color::RGB::Blue, Color::RGB::Blue.to_grayscale] p [Color::RGB::Black, Color::RGB::Black.to_grayscale] p [Color::RGB…

Java FAQ:複数のスレッドをまとめて stop

Java FAQ:S019 Q-18書いてあることが理解できなかった… import java.lang.Thread; public class C2008062000 extends Thread { public static void main(String[] args) { ThreadGroup g = new ThreadGroup("foo"); C2008062001 t1 = new C2008062001(g, "i…

yacc との違い、深さ優先

#!/usr/bin/env perl use strict; use Parse::RecDescent; my $grammar = q{ inputs : 'a' 'b' { print "*ab*\n"; } | 'a' 'b' 'c' { print "*abc*\n"; } }; my $parse = new Parse::RecDescent ($grammar); while (<>) { defined $parse->inputs($_) or pri…

PDF::Writer:Color::RGB#brightness

require 'color' p Color::RGB::Red.brightness p Color::RGB::Green.brightness p Color::RGB::Blue.brightness p Color::RGB::Black.brightness p Color::RGB::White.brightness で、 0.299 0.294650980392157 0.114 0.0 1.0

Java FAQ:ThreadDeath 例外?

Java FAQ:S019 Q-15良く分からないけど、無理矢理… import java.lang.Thread; class C2008061911 extends Thread { public void run() { try { stop(); } catch (ThreadDeath e) { System.out.println("ThreadDeath"); } } } public class C2008061910 { pu…

同一名の複数のルール

#!/usr/bin/env perl use strict; use Parse::RecDescent; my $grammar = q{ inputs : input1(s) { print "*$item[1][0]*\n"; } input1 : 'a' | 'b' input1 : 'c' }; my $parse = new Parse::RecDescent ($grammar); while (<>) { defined $parse->inputs($_…

PDF::Writer:Color::RGB#to_yiq

require 'color' p Color::RGB::Red.to_yiq p Color::RGB::Green.to_yiq p Color::RGB::Blue.to_yiq で、 #<Color::YIQ:0x40228ff4 @q=0.212, @y=0.299, @i=0.596> #<Color::YIQ:0x40228d9c @q=0.0, @y=0.294650980392157, @i=0.0> #<Color::YIQ:0x40228b58 @q=0.311, @y=0.114, @i=0.0></color::yiq:0x40228b58></color::yiq:0x40228d9c></color::yiq:0x40228ff4>

Java FAQ:interrupt() メソッド?

Java FAQ:S019 Q-14http://www.javareading.com/bof/logs/2001/msg00098.html のコードを動かしてみたけど、、、良く分かっていないで、 Interrupted is true

ルールを書かないと?エラー検出?

#!/usr/bin/env perl use strict; use Parse::RecDescent; my $grammar = q{ }; my $parse = new Parse::RecDescent ($grammar); while (<>) { $parse->inputs($_); } で、 Unknown starting rule (Parse::RecDescent::namespace000001::inputs) called at .…

PDF::Writer:Color::RGB#mix_with

require 'color' p Color::RGB.new(0, 127, 255) p Color::RGB.new(0, 127, 255).mix_with(Color::RGB::White, 50) p Color::RGB.new(0, 127, 255).mix_with(Color::RGB::White, 200) p Color::RGB.new(0, 127, 255).mix_with(Color::RGB::Black, 50) p Colo…

Java FAQ:デーモンスレッド?

Java FAQ:S019 Q-12 class C2008061700_ThreadTestThread extends Thread { String s; int num; C2008061700_ThreadTestThread(String s, int num) { this.s = s; this.num = num; } public void run() { for (int i = 0; i < num; i++) { System.out.print…

トークンに正規表現

#!/usr/bin/env perl use strict; use Parse::RecDescent; my $grammar = q{ inputs : /\d+/ { print "*$item[1]*\n"; } }; my $parse = new Parse::RecDescent ($grammar); while (<>) { $parse->inputs($_); } で、 123 *123* a a123

PDF::Writer:Color::RGB#lighten_by, Color::RGB#darken_by

require 'color' p Color::RGB.new(0, 127, 255) p Color::RGB.new(0, 127, 255).lighten_by(50) p Color::RGB.new(0, 127, 255).lighten_by(200) で、 #<Color::RGB:0x401cb930 @b=1.0, @g=0.498039215686275, @r=0.0> #<Color::RGB:0x40228d4c @b=1.0, @g=0.749019607843137, @r=0.5> #</color::rgb:0x40228d4c></color::rgb:0x401cb930>

Java FAQ:2つのスレッドで同期をとりたい

Java FAQ:S019 Q-11サンプルプログラム P6を動作させてみた。 java.lang.NullPointerException at C2008061601.run(C2008061601.java:15) JoinApplet stop.うまく動作しない。なぜ? 「com = com;」を「this.com = com;」に修正したら動作した C2008061601 …

選択とか渡される値とか

#!/usr/bin/env perl use strict; use Parse::RecDescent; my $grammar = q{ inputs : input(s) { print "*$item[1][0]*\n"; } input : 'a' | 'b' | 'c' }; my $parse = new Parse::RecDescent ($grammar); $parse->{tokensep} = '[ \t]*'; my $input = ''; …

PDF::Writer:Color::RGB#to_hsl

require 'color' p Color::RGB::Red.to_hsl p Color::RGB::Blue.to_hsl で、 #<Color::HSL:0x402290d0 @s=1.0, @h=0.0, @l=0.5> #<Color::HSL:0x40228e78 @s=1.0, @h=0.666666666666667, @l=0.5></color::hsl:0x40228e78></color::hsl:0x402290d0>

Java FAQ:スレッドの停止

Java FAQ:S019 Q-10 import java.lang.Thread; public class C2008061501 extends Thread { volatile boolean runFlag = true; public void run() { while (runFlag) { for(int i = 0; i <= 1000; i++) { System.out.println("i = " + i); } } } public voi…

最初の一歩

超有名な(Damian Conway 作だから?)割に、とっつきにくい印象を受けた。慣れたら印象も変わるだろうけど〜 #!/usr/bin/env perl use strict; use Parse::RecDescent; my $grammar = q{ inputs : 'a' { print "*$item[1]*\n"; } }; my $parse = new Parse::R…

PDF::Writer:Color::RGB#to_rgb

require 'color' p Color::RGB::Red.to_rgb p Color::RGB::Blue.to_rgb で、 #<Color::RGB:0x401b1788 @b=0.0, @g=0.0, @r=1.0> #<Color::RGB:0x401b6a58 @b=1.0, @g=0.0, @r=0.0></color::rgb:0x401b6a58></color::rgb:0x401b1788>

Java FAQ:Thread#isAlive

Java FAQ:S019 Q-09 import java.lang.Thread; public class C2008061401 extends Thread { public void run() { } } と import java.lang.Thread; public class C2008061400 { public static void main(String[] args) { C2008061401 t = new C2008061401(…

『Rubyを256倍使うための本 無道編』の 13.defun/intp.y を移植

関数定義可能。変数スコープあり。コードを理解できていないので、意味(動作)から推測(IntpFrame クラスはなし) package Node; sub new { my $class = shift; bless {}, $class; } sub exec_list { my $self = shift; my ($nodes) = @_; foreach my $i (@$no…

PDF::Writer:Color::RGB#to_cmyk

require 'color' p Color::RGB::Red.to_cmyk p Color::RGB::Blue.to_cmyk で、 #<Color::CMYK:0x40228dd8 @k=0.0, @y=1.0, @m=1.0, @c=0.0> #<Color::CMYK:0x40228860 @k=0.0, @y=0.0, @m=1.0, @c=1.0></color::cmyk:0x40228860></color::cmyk:0x40228dd8>

Java FAQ:安易な suspend()

Java FAQ:S019 Q-06まんまで、 注: C2008061300.java は推奨されない API を使用またはオーバーライドしています。 注: 詳細については、-deprecation オプションを指定して再コンパイルしてください。 suspend TestThread main end i = 0 i = 1 i = 2 i = …

『Rubyを256倍使うための本 無道編』の 13.defun/intp.y を移植

関数定義可能に。ただし、変数スコープなし、グローバル package Node; sub new { my $class = shift; bless {}, $class; } sub exec_list { my $self = shift; my ($nodes) = @_; foreach my $i (@$nodes) { $i->evaluate(); } } package RootNode; @ISA = …

PDF::Writer:Color::RGB#html

require 'color' p Color::RGB::Red.html p Color::RGB::Blue.html で、 "#ff0000" "#0000ff"

Java FAQ:スレッドの複数回起動?

Java FAQ:S019 Q-05 public class C2008061200 { class Counter extends java.lang.Thread { public void run() { for (int i=0 ; i<10 ; i++) { System.out.println("Counter: " + i); try { sleep(1000); } catch(java.lang.InterruptedException e) { } …

『Rubyを256倍使うための本 無道編』の 12.if_while/intp.y を移植

%{ use Data::Dumper; package Node; sub new { my $class = shift; bless {}, $class; } sub exec_list { my $self = shift; my ($nodes) = @_; foreach my $i (@$nodes) { $i->evaluate(); } } package RootNode; @RootNode::ISA = qw(Node); sub new { my…

PDF::Writer:Color::RGB#pdf_fill, #pdf_stroke

require 'color' p Color::RGB::Red.pdf_fill p Color::RGB::Red.pdf_stroke p Color::RGB::Blue.pdf_fill p Color::RGB::Blue.pdf_stroke で、 "1.000 0.000 0.000 rg" "1.000 0.000 0.000 RG" "0.000 0.000 1.000 rg" "0.000 0.000 1.000 RG"version 2.0 …

Java FAQ:なぜスレッドの run メソッドを呼び出さなくてもスレッドの run メソッドの処理が動く?

Java FAQ:S019 Q-04確かに昨日のコードは、run() を呼び出していないのになんで動くんだろうと不思議ではあったんだ〜

『Rubyを256倍使うための本 無道編』の 11.op_ok/intp.y を移植

四則演算ができるように %left '+' '-' %left '*' '/' %left UMINUS %% program : | program stmt '\n' { $_[0]->YYData->{LINENO}++; } | program '\n' { $_[0]->YYData->{LINENO}++; } | error '\n' { $_[0]->YYErrok } ; stmt : expr | assign | IDENT re…