2009-06-01から1ヶ月間の記事一覧
まんま #!/usr/bin/env ruby require "prawn" Prawn::Document.generate(File.basename($0, ".rb") + ".pdf") do font "Times-Roman" text "Hello World", :at => [200,720], :size => 32 end まんま #!/usr/bin/env ruby require "prawn" Prawn::Document.g…
import org.apache.commons.lang.CharRange; public class C2009062000 { public static void main(String[] args) { System.out.println(new CharRange('a', 'c').isNegated()); System.out.println(new CharRange('a', true).isNegated()); } } で、 false…
トークンを記述 %% %class Scanner %implements Test.yyInput %type int %eofval{ return YYEOF; %eofval} %{ private int token; protected Object value; public boolean advance() throws java.io.IOException { token = yylex(); return token != YYEOF;…
#!/usr/bin/env ruby require "prawn" Prawn::Document.generate(File.basename($0, ".rb") + ".pdf") do end
import org.apache.commons.lang.CharRange; public class C2009061900 { public static void main(String[] args) { System.out.println(new CharRange('a', 'c').hashCode()); System.out.println(new CharRange('a', 'c').hashCode()); } } で、 873 873
トークンを記述 %{ import java.io.*; public class Test { %} %token <char> A %% start : A '\n' { System.out.println("*a*"); } %% public static void main (String args []) { Scanner scanner = new Scanner(); try { new Test().yyparse(scanner); } catch</char>…
#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new page = pdf.add_page page.set_horizontal_scalling(100*2) font = pdf.get_font("Helvetica", nil) page.set_font_and_size(font, 20) page.begin_text page.text_out(100, 100, "foo") page.end_tex…
import org.apache.commons.lang.CharRange; public class C2009061800 { public static void main(String[] args) { System.out.println(new CharRange('a', 'c').getStart()); System.out.println(new CharRange('a', true).getStart()); } } で、 a a
トークンでなく、直接文字を記述 %{ import java.io.*; public class Test { %} %% start : 'a' '\n' { System.out.println("*a*"); } %% public static void main (String args []) { Scanner scanner = new Scanner(); try { new Test().yyparse(scanner);…
#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new page = pdf.add_page page.move_to(100, 100) page.line_to(150, 100) page.line_to(150, 50) page.line_to(125, 150) page.close_path_eofill_stroke page.move_to(200, 100) page.line_to(250, 100)…
import org.apache.commons.lang.CharRange; public class C2009061700 { public static void main(String[] args) { System.out.println(new CharRange('a', 'c').getEnd()); System.out.println(new CharRange('a', true).getEnd()); } } で、 c a
トークンでなく、直接文字を記述 %{ import java.io.*; public class Test { %} %% start : 'a' '\n' { System.out.println("*a*"); } %% public static void main (String args []) { Scanner scanner = new Scanner(new InputStreamReader(System.in)); tr…
#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new pdf.add_page_label(0, HPDFDoc::HPDF_PAGE_NUM_STYLE_LOWER_LETTERS, 1, "") page = pdf.add_page page = pdf.add_page pdf.save_to_file(File.basename($0, ".rb") + ".pdf")
import org.apache.commons.lang.CharRange; public class C2009061600 { public static void main(String[] args) { System.out.println(new CharRange('a', 'c').equals(new CharRange('a', 'c'))); System.out.println(new CharRange('a', 'c').equals(ne…
arith_simple/Arith.jay を参考に %{ import java.io.*; public class Test { %} %token <char> A %% start : A '\n' { System.out.println("*a*"); } %% public static void main (String args []) { Scanner scanner = new Scanner(new InputStreamReader(System</char>…
#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new pdf.add_page_label(0, HPDFDoc::HPDF_PAGE_NUM_STYLE_UPPER_LETTERS, 1, "") 30.times do page = pdf.add_page end pdf.save_to_file(File.basename($0, ".rb") + ".pdf") 「Z」の後は「AA」「BB」〜…
import org.apache.commons.lang.CharRange; public class C2009061500 { public static void main(String[] args) { System.out.println(new CharRange('a', 'c').contains(new CharRange('a'))); System.out.println(new CharRange('a', 'c').contains(new…
「Coins を使って新たなコンパイラを作る:LLパーサを使った例」が(自分にとっては)余りにも分かりにくく、色々はまってしまったので記録(on Linux)準備 JDK を使えるようにしておく JavaCC 使えるようにしておく COINS を展開しておく(unzip coins-1.4.4.3-…
#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new pdf.add_page_label(0, HPDFDoc::HPDF_PAGE_NUM_STYLE_LOWER_ROMAN, 1, "") page = pdf.add_page page = pdf.add_page pdf.save_to_file(File.basename($0, ".rb") + ".pdf")
import org.apache.commons.lang.CharRange; public class C2009061400 { public static void main(String[] args) { System.out.println(new CharRange('a', 'c').contains('a')); System.out.println(new CharRange('a', 'c').contains('c')); System.out.…
練習問題2 import re globalvars = { 'PI' : 3.14159265358979, 'E' : 2.71828182845905 } def lookup(name): if not globalvars.has_key(name): print 'Undefined (defaulting to 0):', name return globalvars.get(name, 0) def power(a): if len(a) >= 2:…
#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new pdf.add_page_label(0, HPDFDoc::HPDF_PAGE_NUM_STYLE_UPPER_ROMAN, 1, "") page = pdf.add_page page = pdf.add_page pdf.save_to_file(File.basename($0, ".rb") + ".pdf")
import org.apache.commons.lang.CharRange; public class C2009061300 { public static void main(String[] args) { System.out.println(new CharRange('a')); System.out.println(new CharRange('a', true)); System.out.println(new CharRange('a', 'c'))…
本当は未完成 globalvars = {} def lookup(name): if not globalvars.has_key(name): print 'Undefined (defaulting to 0):', name return globalvars.get(name, 0) def power(a): if len(a) >= 2: x = a.pop(0) return x ** power(a) else: return a[0] %% …
#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new pdf.add_page_label(0, HPDFDoc::HPDF_PAGE_NUM_STYLE_DECIMAL, 1, "foo") page = pdf.add_page page = pdf.add_page pdf.save_to_file(File.basename($0, ".rb") + ".pdf") ドキュメントの各ページの…
import org.apache.commons.lang.math.IntRange; public class C2009061200 { public static void main(String[] args) { System.out.println(new IntRange(1, 3)); System.out.println(new IntRange(1, 3).toString()); } } で、 Range[1,3] Range[1,3]
整数入力のみ def power(a): if len(a) >= 2: x = a.pop(0) return x ** power(a) else: return a[0] %% parser Test: ignore: "[ \r\t\n]+" token END : "$" token NUM : "[0-9]+" rule start : expr END {{ print "\t%d" % expr }} rule expr : term {{ n …
#!/usr/bin/env ruby require "hpdf" pdf = HPDFDoc.new page = pdf.add_page p page.get_filling_color_space page.set_rgb_fill(1, 0, 0) p page.get_filling_color_space page.set_cmyk_fill(1, 0, 0, 0) p page.get_filling_color_space page.set_gray_f…
import org.apache.commons.lang.math.IntRange; public class C2009061100 { public static void main(String[] args) { System.out.println(new IntRange(1, 3).overlapsRange(new IntRange(1, 3))); System.out.println(new IntRange(1, 3).overlapsRange…
%% parser Test: token END: "$" token A: "a" rule start: A END {{ print "*a*" }} 最後に以下の部分が追加されていた if __name__ == '__main__': from sys import argv, stdin if len(argv) >= 2: if len(argv) >= 3: f = open(argv[2],'r') else: f = s…