rabbit-slide-kou-rubykaigi-2019 2019.4.19.3 → 2019.4.19.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/config.yaml +1 -1
- data/csv.rab +69 -2
- data/pdf/rubykaigi-2019-csv.pdf +0 -0
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a6b9a5d181d12f2e672cae403fb4e81ab52663d769ef59c44c66b9d51ff59060
|
4
|
+
data.tar.gz: d572b44371f49c634dca4343148c5a41c9d7b1d4370dcc8234f03a44f31ae9ab
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3dda90466a2032440d46ba0384a72232e511a333a53624f0b1790ca4e80f57b44657c4e8f6d8bfbd330c9d6343856a0a8e0cb0b6b8b5a94ff198c07ae1a45775
|
7
|
+
data.tar.gz: b56425dba64a4188a4b00aa26a9add89fe8aa7258131b573bfabb34bf61bedad8084260a6d2ccb4065faab889935f2c22aaf52c223725384cd13f4ad44435855
|
data/config.yaml
CHANGED
data/csv.rab
CHANGED
@@ -486,6 +486,17 @@ Lazy\n
|
|
486
486
|
(({generate_\nline})), 284.4i/s, 684.2i/s, 2.41x
|
487
487
|
(({<<})), 2891.4i/s, 4824.1i/s, 1.67x
|
488
488
|
|
489
|
+
= How to initialize lazily\n(('note:初期化を遅延する方法'))
|
490
|
+
|
491
|
+
# rouge ruby
|
492
|
+
def parser
|
493
|
+
@parser ||= Parser.new(...)
|
494
|
+
end
|
495
|
+
|
496
|
+
def writer
|
497
|
+
@writer ||= Writer.new(...)
|
498
|
+
end
|
499
|
+
|
489
500
|
= Point (4)\n(('note:ポイント(4)'))
|
490
501
|
|
491
502
|
* Do only needed things\n
|
@@ -599,7 +610,7 @@ Fully-featured benchmark driver for Ruby 3x3\n
|
|
599
610
|
|
600
611
|
(({gem install csv}))
|
601
612
|
|
602
|
-
=
|
613
|
+
= csv in Ruby 2.5\n(('note:Ruby 2.5のcsv'))
|
603
614
|
|
604
615
|
Default gemified\n
|
605
616
|
(('note:デフォルトgem化'))
|
@@ -618,6 +629,62 @@ Default gemified\n
|
|
618
629
|
|
619
630
|
(({gem install csv}))
|
620
631
|
|
632
|
+
= Future\n(('note:今後の話'))
|
633
|
+
|
634
|
+
Faster\n
|
635
|
+
(('note:さらに速く'))
|
636
|
+
|
637
|
+
= Improve (({String#split}))\n(('note:(({String#split}))を改良'))
|
638
|
+
|
639
|
+
Accept (({" "}))\n
|
640
|
+
as normal separator\n
|
641
|
+
(('note:(({" "}))をただの区切り文字として扱う'))
|
642
|
+
|
643
|
+
= (({split(" ")})) works like awk\n(('note:(({split(" ")}))はawkのように動く'))
|
644
|
+
|
645
|
+
# rouge ruby
|
646
|
+
" a b c".split(" ", -1)
|
647
|
+
# => ["a", "b", "c"]
|
648
|
+
" a b c".split(/ /, -1)
|
649
|
+
# => ["", "a", "", "b", "c"]
|
650
|
+
|
651
|
+
= (({String#split})) in csv\n(('note:csvでの(({String#split}))'))
|
652
|
+
|
653
|
+
# rouge ruby
|
654
|
+
if @column_separator == " "
|
655
|
+
line.split(/ /, -1)
|
656
|
+
else
|
657
|
+
line.split(@column_separator, -1)
|
658
|
+
end
|
659
|
+
|
660
|
+
= (({split(string)})) vs. (({split(regexp)}))
|
661
|
+
|
662
|
+
# RT
|
663
|
+
|
664
|
+
(({regexp})), (({string})), Faster?
|
665
|
+
|
666
|
+
344448i/s, 3161117i/s, 9.18x
|
667
|
+
|
668
|
+
(('tag:center'))
|
669
|
+
See also ((<"[Feauture:15771]"|URL:https://bugs.ruby-lang.org/issues/15771>))
|
670
|
+
|
671
|
+
= Improve (({StringScanner#scan}))\n(('note:(({StringScanner#scan}))を改良'))
|
672
|
+
|
673
|
+
Accept (({String}))\n
|
674
|
+
as pattern\n
|
675
|
+
(('note:(({String}))もパターンとして使えるようにする'))
|
676
|
+
|
677
|
+
= (({scan(string)})) vs. (({scan(regexp)}))
|
678
|
+
|
679
|
+
# RT
|
680
|
+
|
681
|
+
(({regexp})), (({string})), Faster?
|
682
|
+
|
683
|
+
14712660i/s, 18421631i/s, 1.25x
|
684
|
+
|
685
|
+
(('tag:center'))
|
686
|
+
See also ((<"ruby/strscan#4"|URL:https://github.com/ruby/strscan/pull/4>))
|
687
|
+
|
621
688
|
= Faster KEN_ALL.CSV parsing (1)\n(('note:より速いKEN_ALL.CSVのパース(1)'))
|
622
689
|
|
623
690
|
# RT
|
@@ -648,7 +715,7 @@ Default gemified\n
|
|
648
715
|
Python, UTF-8, 0.208s
|
649
716
|
Apache Arrow, UTF-8, 0.145s
|
650
717
|
|
651
|
-
= Further
|
718
|
+
= Further work\n(('note:今後の改善案'))
|
652
719
|
|
653
720
|
* Improve transcoding performance of Ruby\n
|
654
721
|
(('note:Rubyのエンコーディング変換処理の高速化'))
|
data/pdf/rubykaigi-2019-csv.pdf
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rabbit-slide-kou-rubykaigi-2019
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2019.4.19.
|
4
|
+
version: 2019.4.19.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kouhei Sutou
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-04-
|
11
|
+
date: 2019-04-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rabbit
|
@@ -89,7 +89,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
89
89
|
version: '0'
|
90
90
|
requirements: []
|
91
91
|
rubyforge_project:
|
92
|
-
rubygems_version: 2.7.6
|
92
|
+
rubygems_version: 2.7.6
|
93
93
|
signing_key:
|
94
94
|
specification_version: 4
|
95
95
|
summary: Better CSV processing with Ruby 2.6
|