galaaz 0.4.8 → 0.4.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 58c62af9441e2a11082559e619498f518d1060d64e4078dea85a89cb795305d5
4
- data.tar.gz: 72d415df8641497ed7ca1a442a8e06e5eaab21aa7f9162dfa132cf2728808948
3
+ metadata.gz: f328b999e2b5b132053b133a1f1fcc3ddd6f5a295cc040629a6989150a765775
4
+ data.tar.gz: f6bce01abc3f189f1e16f8cf2691a7bd14d2962f295dccda5a00e564e4470cc5
5
5
  SHA512:
6
- metadata.gz: 7a6559d5aa01378730bdd1e9b47ec157eaea0dddf70f2d8974a6de36a86c746e429d71293adb511ce746cdd5ffba913eb3db7e9c39b8b0b370a8162ee0f511e3
7
- data.tar.gz: e247f80a65ed5a338b553ce0e2226d46ab4527e8460beb3a1871646f6cbf83be653d8fa0d57fbd32c727377fa826e7b84463858ac0c9047baf7fe9c21ff82ad0
6
+ metadata.gz: 5b287e9d5883723a8e378d88c5df28d7097ca3ca14b6648641415c2734d4204473f71ad173d45b0946e5e02e67d9c1da168a06aeaf2472c388232c7acf44cdc5
7
+ data.tar.gz: 57a0c432b785e89ee1df8c38f2710736e2150b2024e11b1ed1e0437e1903a96934b6be135fe1ffe54d9fb891527d15275f1c119cdf6f1a453d47c991b268d273
data/README.md CHANGED
@@ -1,27 +1,3 @@
1
- ---
2
- title: "Galaaz Manual"
3
- subtitle: "How to tightly couple Ruby and R in GraalVM"
4
- author: "Rodrigo Botafogo"
5
- tags: [Galaaz, Ruby, R, TruffleRuby, FastR, GraalVM, ggplot2]
6
- date: "2019"
7
- output:
8
- html_document:
9
- self_contained: true
10
- keep_md: true
11
- md_document:
12
- variant: markdown_github
13
- pdf_document:
14
- includes:
15
- in_header: "../../sty/galaaz.sty"
16
- keep_tex: yes
17
- number_sections: yes
18
- toc: true
19
- toc_depth: 2
20
- fontsize: 11pt
21
- ---
22
-
23
-
24
-
25
1
  # Introduction
26
2
 
27
3
  Galaaz is a system for tightly coupling Ruby and R. Ruby is a powerful language, with a large
@@ -221,22 +197,22 @@ vec = R.c(1, hello, 5)
221
197
  ## (eval):1:in `exec_ruby'
222
198
  ## /home/rbotafogo/desenv/galaaz/lib/util/exec_ruby.rb:141:in `instance_eval'
223
199
  ## /home/rbotafogo/desenv/galaaz/lib/util/exec_ruby.rb:141:in `exec_ruby'
224
- ## /home/rbotafogo/desenv/galaaz/lib/gknit/knitr_engine.rb:657:in `block in initialize'
200
+ ## /home/rbotafogo/desenv/galaaz/lib/gknit/knitr_engine.rb:650:in `block in initialize'
225
201
  ## /home/rbotafogo/desenv/galaaz/lib/R_interface/ruby_callback.rb:77:in `call'
226
202
  ## /home/rbotafogo/desenv/galaaz/lib/R_interface/ruby_callback.rb:77:in `callback'
227
203
  ## (eval):3:in `function(...) {\n rb_method(...)'
228
204
  ## unknown.r:1:in `in_dir'
229
205
  ## unknown.r:1:in `block_exec:BLOCK0'
230
- ## /home/rbotafogo/lib/graalvm-ce-1.0.0-rc15/jre/languages/R/library/knitr/R/block.R:102:in `block_exec'
231
- ## /home/rbotafogo/lib/graalvm-ce-1.0.0-rc15/jre/languages/R/library/knitr/R/block.R:92:in `call_block'
232
- ## /home/rbotafogo/lib/graalvm-ce-1.0.0-rc15/jre/languages/R/library/knitr/R/block.R:6:in `process_group.block'
233
- ## /home/rbotafogo/lib/graalvm-ce-1.0.0-rc15/jre/languages/R/library/knitr/R/block.R:3:in `<no source>'
206
+ ## /home/rbotafogo/lib/graalvm-ce-1.0.0-rc16/jre/languages/R/library/knitr/R/block.R:102:in `block_exec'
207
+ ## /home/rbotafogo/lib/graalvm-ce-1.0.0-rc16/jre/languages/R/library/knitr/R/block.R:92:in `call_block'
208
+ ## /home/rbotafogo/lib/graalvm-ce-1.0.0-rc16/jre/languages/R/library/knitr/R/block.R:6:in `process_group.block'
209
+ ## /home/rbotafogo/lib/graalvm-ce-1.0.0-rc16/jre/languages/R/library/knitr/R/block.R:3:in `<no source>'
234
210
  ## unknown.r:1:in `withCallingHandlers'
235
211
  ## unknown.r:1:in `process_file'
236
212
  ## unknown.r:1:in `<no source>:BLOCK1'
237
- ## /home/rbotafogo/lib/graalvm-ce-1.0.0-rc15/jre/languages/R/library/knitr/R/output.R:129:in `<no source>'
213
+ ## /home/rbotafogo/lib/graalvm-ce-1.0.0-rc16/jre/languages/R/library/knitr/R/output.R:129:in `<no source>'
238
214
  ## unknown.r:1:in `<no source>:BLOCK1'
239
- ## /home/rbotafogo/lib/graalvm-ce-1.0.0-rc15/jre/languages/R/library/rmarkdown/R/render.R:162:in `<no source>'
215
+ ## /home/rbotafogo/lib/graalvm-ce-1.0.0-rc16/jre/languages/R/library/rmarkdown/R/render.R:162:in `<no source>'
240
216
  ## <REPL>:5:in `<repl wrapper>'
241
217
  ## <REPL>:1
242
218
  ```
@@ -1764,6 +1740,288 @@ puts @flights_sm.head.as__data__frame
1764
1740
  ## 6 2013 1 1 -4 12 719 150 -16 287.6000
1765
1741
  ```
1766
1742
 
1743
+ ## Summarising data
1744
+
1745
+ Function 'summarise' calculates summaries for the data frame. When no 'group_by' is used
1746
+ a single value is obtained from the data frame:
1747
+
1748
+
1749
+ ```ruby
1750
+ puts @flights.summarise(delay: E.mean(:dep_delay, na__rm: true)).as__data__frame
1751
+ ```
1752
+
1753
+ ```
1754
+ ## delay
1755
+ ## 1 12.63907
1756
+ ```
1757
+
1758
+ When a data frame is groupe with 'group_by' summaries apply to the given group:
1759
+
1760
+
1761
+ ```ruby
1762
+ by_day = @flights.group_by(:year, :month, :day)
1763
+ puts by_day.summarise(delay: :dep_delay.mean(na__rm: true)).head.as__data__frame
1764
+ ```
1765
+
1766
+ ```
1767
+ ## year month day delay
1768
+ ## 1 2013 1 1 11.548926
1769
+ ## 2 2013 1 2 13.858824
1770
+ ## 3 2013 1 3 10.987832
1771
+ ## 4 2013 1 4 8.951595
1772
+ ## 5 2013 1 5 5.732218
1773
+ ## 6 2013 1 6 7.148014
1774
+ ```
1775
+
1776
+ Next we put many operations together by pipping them one after the other:
1777
+
1778
+
1779
+ ```ruby
1780
+ delays = @flights.
1781
+ group_by(:dest).
1782
+ summarise(
1783
+ count: E.n,
1784
+ dist: :distance.mean(na__rm: true),
1785
+ delay: :arr_delay.mean(na__rm: true)).
1786
+ filter(:count > 20, :dest != "NHL")
1787
+
1788
+ puts delays.as__data__frame
1789
+ ```
1790
+
1791
+ ```
1792
+ ## dest count dist delay
1793
+ ## 1 ABQ 254 1826.00000 4.38188976
1794
+ ## 2 ACK 265 199.00000 4.85227273
1795
+ ## 3 ALB 439 143.00000 14.39712919
1796
+ ## 4 ATL 17215 757.10822 11.30011285
1797
+ ## 5 AUS 2439 1514.25297 6.01990875
1798
+ ## 6 AVL 275 583.58182 8.00383142
1799
+ ## 7 BDL 443 116.00000 7.04854369
1800
+ ## 8 BGR 375 378.00000 8.02793296
1801
+ ## 9 BHM 297 865.99663 16.87732342
1802
+ ## 10 BNA 6333 758.21348 11.81245891
1803
+ ## 11 BOS 15508 190.63696 2.91439222
1804
+ ## 12 BQN 896 1578.98326 8.24549550
1805
+ ## 13 BTV 2589 265.09154 8.95099602
1806
+ ## 14 BUF 4681 296.80837 8.94595186
1807
+ ## 15 BUR 371 2465.00000 8.17567568
1808
+ ## 16 BWI 1781 179.41830 10.72673385
1809
+ ## 17 BZN 36 1882.00000 7.60000000
1810
+ ## 18 CAE 116 603.55172 41.76415094
1811
+ ## 19 CAK 864 397.00000 19.69833729
1812
+ ## 20 CHO 52 305.00000 9.50000000
1813
+ ## 21 CHS 2884 632.91678 10.59296847
1814
+ ## 22 CLE 4573 414.17428 9.18161129
1815
+ ## 23 CLT 14064 538.02730 7.36031885
1816
+ ## 24 CMH 3524 476.55505 10.60132291
1817
+ ## 25 CRW 138 444.00000 14.67164179
1818
+ ## 26 CVG 3941 575.15986 15.36456376
1819
+ ## 27 DAY 1525 537.10230 12.68048606
1820
+ ## 28 DCA 9705 211.00618 9.06695204
1821
+ ## 29 DEN 7266 1614.67836 8.60650021
1822
+ ## 30 DFW 8738 1383.04303 0.32212685
1823
+ ## 31 DSM 569 1020.88752 19.00573614
1824
+ ## 32 DTW 9384 498.12852 5.42996346
1825
+ ## 33 EGE 213 1735.70892 6.30434783
1826
+ ## 34 FLL 12055 1070.06877 8.08212154
1827
+ ## 35 GRR 765 605.78170 18.18956044
1828
+ ## 36 GSO 1606 449.84184 14.11260054
1829
+ ## 37 GSP 849 595.95995 15.93544304
1830
+ ## 38 HNL 707 4972.67468 -1.36519258
1831
+ ## 39 HOU 2115 1420.15508 7.17618819
1832
+ ## 40 IAD 5700 224.84684 13.86420212
1833
+ ## 41 IAH 7198 1407.20672 4.24079040
1834
+ ## 42 ILM 110 500.00000 4.63551402
1835
+ ## 43 IND 2077 652.26288 9.94043412
1836
+ ## 44 JAC 25 1875.60000 28.09523810
1837
+ ## 45 JAX 2720 824.67610 11.84483416
1838
+ ## 46 LAS 5997 2240.96148 0.25772849
1839
+ ## 47 LAX 16174 2468.62236 0.54711094
1840
+ ## 48 LGB 668 2465.00000 -0.06202723
1841
+ ## 49 MCI 2008 1097.69522 14.51405836
1842
+ ## 50 MCO 14082 943.11057 5.45464309
1843
+ ## 51 MDW 4113 718.04595 12.36422360
1844
+ ## 52 MEM 1789 954.20123 10.64531435
1845
+ ## 53 MHT 1009 207.02973 14.78755365
1846
+ ## 54 MIA 11728 1091.55244 0.29905978
1847
+ ## 55 MKE 2802 733.38151 14.16722038
1848
+ ## 56 MSN 572 803.95455 20.19604317
1849
+ ## 57 MSP 7185 1017.40167 7.27016886
1850
+ ## 58 MSY 3799 1177.70571 6.49017497
1851
+ ## 59 MVY 221 173.00000 -0.28571429
1852
+ ## 60 MYR 59 550.66102 4.60344828
1853
+ ## 61 OAK 312 2576.00000 3.07766990
1854
+ ## 62 OKC 346 1325.00000 30.61904762
1855
+ ## 63 OMA 849 1135.56655 14.69889841
1856
+ ## 64 ORD 17283 729.00081 5.87661475
1857
+ ## 65 ORF 1536 288.52344 10.94909344
1858
+ ## 66 PBI 6554 1028.83811 8.56297210
1859
+ ## 67 PDX 1354 2445.56573 5.14157973
1860
+ ## 68 PHL 1632 94.32353 10.12719014
1861
+ ## 69 PHX 4656 2141.30326 2.09704733
1862
+ ## 70 PIT 2875 334.06122 7.68099053
1863
+ ## 71 PSE 365 1617.00000 7.87150838
1864
+ ## 72 PVD 376 160.00000 16.23463687
1865
+ ## 73 PWM 2352 276.12840 11.66040210
1866
+ ## 74 RDU 8163 426.75769 10.05238095
1867
+ ## 75 RIC 2454 281.40465 20.11125320
1868
+ ## 76 ROC 2416 259.25083 11.56064461
1869
+ ## 77 RSW 3537 1072.85327 3.23814963
1870
+ ## 78 SAN 2737 2437.29923 3.13916574
1871
+ ## 79 SAT 686 1578.34111 6.94537178
1872
+ ## 80 SAV 804 709.18408 15.12950601
1873
+ ## 81 SDF 1157 645.98358 12.66938406
1874
+ ## 82 SEA 3923 2412.66531 -1.09909910
1875
+ ## 83 SFO 13331 2577.92356 2.67289152
1876
+ ## 84 SJC 329 2569.00000 3.44817073
1877
+ ## 85 SJU 5819 1599.83365 2.52052659
1878
+ ## 86 SLC 2467 1986.98662 0.17625459
1879
+ ## 87 SMF 284 2521.00000 12.10992908
1880
+ ## 88 SNA 825 2434.00000 -7.86822660
1881
+ ## 89 SRQ 1211 1044.65153 3.08243131
1882
+ ## 90 STL 4339 878.72321 11.07846451
1883
+ ## 91 STT 522 1626.98276 -3.83590734
1884
+ ## 92 SYR 1761 205.92164 8.90392501
1885
+ ## 93 TPA 7466 1003.93557 7.40852503
1886
+ ## 94 TUL 315 1215.00000 33.65986395
1887
+ ## 95 TVC 101 652.38614 12.96842105
1888
+ ## 96 TYS 631 638.80983 24.06920415
1889
+ ## 97 XNA 1036 1142.50579 7.46572581
1890
+ ```
1891
+
1892
+ # Using Data Table
1893
+
1894
+
1895
+ ```ruby
1896
+ R.library('data.table')
1897
+ R.install_and_loads('curl')
1898
+
1899
+ input = "https://raw.githubusercontent.com/Rdatatable/data.table/master/vignettes/flights14.csv"
1900
+ @flights = R.fread(input)
1901
+ puts @flights
1902
+ puts @flights.dim
1903
+ ```
1904
+
1905
+ ```
1906
+ ## year month day dep_delay arr_delay carrier origin dest air_time
1907
+ ## 1: 2014 1 1 14 13 AA JFK LAX 359
1908
+ ## 2: 2014 1 1 -3 13 AA JFK LAX 363
1909
+ ## 3: 2014 1 1 2 9 AA JFK LAX 351
1910
+ ## 4: 2014 1 1 -8 -26 AA LGA PBI 157
1911
+ ## 5: 2014 1 1 2 1 AA JFK LAX 350
1912
+ ## ---
1913
+ ## 253312: 2014 10 31 1 -30 UA LGA IAH 201
1914
+ ## 253313: 2014 10 31 -5 -14 UA EWR IAH 189
1915
+ ## 253314: 2014 10 31 -8 16 MQ LGA RDU 83
1916
+ ## 253315: 2014 10 31 -4 15 MQ LGA DTW 75
1917
+ ## 253316: 2014 10 31 -5 1 MQ LGA SDF 110
1918
+ ## distance hour
1919
+ ## 1: 2475 9
1920
+ ## 2: 2475 11
1921
+ ## 3: 2475 19
1922
+ ## 4: 1035 7
1923
+ ## 5: 2475 13
1924
+ ## ---
1925
+ ## 253312: 1416 14
1926
+ ## 253313: 1400 8
1927
+ ## 253314: 431 11
1928
+ ## 253315: 502 11
1929
+ ## 253316: 659 8
1930
+ ## [1] 253316 11
1931
+ ```
1932
+
1933
+
1934
+ ```ruby
1935
+
1936
+ data_table = R.data__table(
1937
+ ID: R.c("b","b","b","a","a","c"),
1938
+ a: (1..6),
1939
+ b: (7..12),
1940
+ c: (13..18)
1941
+ )
1942
+
1943
+ puts data_table
1944
+ puts data_table.ID
1945
+ ```
1946
+
1947
+ ```
1948
+ ## ID a b c
1949
+ ## 1: b 1 7 13
1950
+ ## 2: b 2 8 14
1951
+ ## 3: b 3 9 15
1952
+ ## 4: a 4 10 16
1953
+ ## 5: a 5 11 17
1954
+ ## 6: c 6 12 18
1955
+ ## [1] "b" "b" "b" "a" "a" "c"
1956
+ ```
1957
+
1958
+
1959
+ ```ruby
1960
+ # subset rows in i
1961
+ ans = @flights[(:origin.eq "JFK") & (:month.eq 6)]
1962
+ puts ans.head
1963
+
1964
+ # Get the first two rows from flights.
1965
+
1966
+ ans = @flights[(1..2)]
1967
+ puts ans
1968
+
1969
+ # Sort flights first by column origin in ascending order, and then by dest in descending order:
1970
+
1971
+ # ans = @flights[E.order(:origin, -(:dest))]
1972
+ # puts ans.head
1973
+ ```
1974
+
1975
+ ```
1976
+ ## year month day dep_delay arr_delay carrier origin dest air_time
1977
+ ## 1: 2014 6 1 -9 -5 AA JFK LAX 324
1978
+ ## 2: 2014 6 1 -10 -13 AA JFK LAX 329
1979
+ ## 3: 2014 6 1 18 -1 AA JFK LAX 326
1980
+ ## 4: 2014 6 1 -6 -16 AA JFK LAX 320
1981
+ ## 5: 2014 6 1 -4 -45 AA JFK LAX 326
1982
+ ## 6: 2014 6 1 -6 -23 AA JFK LAX 329
1983
+ ## distance hour
1984
+ ## 1: 2475 8
1985
+ ## 2: 2475 12
1986
+ ## 3: 2475 7
1987
+ ## 4: 2475 10
1988
+ ## 5: 2475 18
1989
+ ## 6: 2475 14
1990
+ ## year month day dep_delay arr_delay carrier origin dest air_time
1991
+ ## 1: 2014 1 1 14 13 AA JFK LAX 359
1992
+ ## 2: 2014 1 1 -3 13 AA JFK LAX 363
1993
+ ## distance hour
1994
+ ## 1: 2475 9
1995
+ ## 2: 2475 11
1996
+ ```
1997
+
1998
+
1999
+ ```ruby
2000
+ # Select column(s) in j
2001
+ # select arr_delay column, but return it as a vector.
2002
+
2003
+ ans = @flights[:all, :arr_delay]
2004
+ puts ans.head
2005
+
2006
+ # Select arr_delay column, but return as a data.table instead.
2007
+
2008
+ ans = @flights[:all, :arr_delay.list]
2009
+ puts ans.head
2010
+
2011
+ ans = @flights[:all, E.list(:arr_delay, :dep_delay)]
2012
+ ```
2013
+
2014
+ ```
2015
+ ## [1] 13 13 9 -26 1 0
2016
+ ## arr_delay
2017
+ ## 1: 13
2018
+ ## 2: 13
2019
+ ## 3: 9
2020
+ ## 4: -26
2021
+ ## 5: 1
2022
+ ## 6: 0
2023
+ ```
2024
+
1767
2025
  # Graphics in Galaaz
1768
2026
 
1769
2027
  Creating graphics in Galaaz is quite easy, as it can use all the power of ggplot2. There are
@@ -1872,8 +2130,37 @@ puts @mtcars
1872
2130
  ## Toyota Corolla Toyota Corolla 2.29 above
1873
2131
  ```
1874
2132
  Now, lets plot the diverging bar plot. When using gKnit, there is no need to call
1875
- 'R.awt' to create a plotting device, since gKnit does take care of it:
2133
+ 'R.awt' to create a plotting device, since gKnit does take care of it. Galaaz
2134
+ provides integration with ggplot. The interested reader should check online for more
2135
+ information on ggplot, since it is outside the scope of this manual describing
2136
+ how ggplot works. We give here but a brief description on how this plot is generated.
2137
+
2138
+ ggplot implements the 'grammar of graphics'. In this approach, plots are build by
2139
+ adding layers to the plot. On the first layer we describe what we want on the 'x'
2140
+ and 'y' axis of the plot. In this case, we have 'car_name' on the 'x' axis and
2141
+ 'mpg\_z' on the 'y' axis. Then the type of graph is specified by adding
2142
+ 'geom\_bar' (for a bar graph). We specify that our bars should be filled using
2143
+ 'mpg\_type', which is either 'above' or 'bellow' giving then two colours for
2144
+ filling. On the next layer we specify the labels for the graph, then we add the
2145
+ title and subtitle. Finally, in a bar chart usually bars go on the vertical direction,
2146
+ but in this graph we want the bars to be horizontally layed so we add 'coord\_flip'.
2147
+
2148
+
2149
+ ```ruby
2150
+ require 'ggplot'
2151
+
2152
+ puts @mtcars.ggplot(E.aes(x: :car_name, y: :mpg_z, label: :mpg_z)) +
2153
+ R.geom_bar(E.aes(fill: :mpg_type), stat: 'identity', width: 0.5) +
2154
+ R.scale_fill_manual(name: 'Mileage',
2155
+ labels: R.c('Above Average', 'Below Average'),
2156
+ values: R.c('above': '#00ba38', 'below': '#f8766d')) +
2157
+ R.labs(subtitle: "Normalised mileage from 'mtcars'",
2158
+ title: "Diverging Bars") +
2159
+ R.coord_flip
2160
+ ```
2161
+
1876
2162
 
2163
+ ![](/home/rbotafogo/desenv/galaaz/blogs/manual/manual_files/figure-html/diverging_bar.png)<!-- -->
1877
2164
 
1878
2165
 
1879
2166
  [TO BE CONTINUED...]
data/Rakefile CHANGED
@@ -35,7 +35,7 @@ class MakeTask < Rake::TaskLib
35
35
  # Create class variables for the polyglot options and libs
36
36
  # not yet possible to run native with R it seems...
37
37
  # @@polyglot_options = "--polyglot --experimental-options --single_threaded"
38
- @@polyglot_options = "--polyglot --jvm --experimental-options --single_threaded"
38
+ @@polyglot_options = "--polyglot --jvm --experimental-options --single-threaded"
39
39
  @@libs = "-Ilib/" # -Ir_requires/"
40
40
 
41
41
  #----------------------------------------------------------------------------------------
@@ -76,12 +76,16 @@ class MakeTask < Rake::TaskLib
76
76
 
77
77
  end
78
78
 
79
+
80
+ task :default => "sthda:all"
81
+
79
82
  geoms = FileList['examples/sthda_ggplot/**/*.rb']
80
83
  specs = FileList['specs/**/*.rb']
81
84
  master_list = FileList['examples/50Plots_MasterList/**/*.rb']
82
85
  islr = FileList['examples/islr/**/*.rb']
83
86
  misc = FileList['examples/misc/**/*.rb']
84
87
  blogs = Dir.entries("blogs")
88
+ bugs = FileList['bugs/**/*.rb']
85
89
 
86
90
  #===========================================================================================
87
91
  # Creates tasks for all specs.
@@ -148,7 +152,17 @@ misc.each do |f|
148
152
  Desc
149
153
  end
150
154
 
151
- task :default => "sthda:all"
155
+ #===========================================================================================
156
+ # Creates tasks for bug examples
157
+ #===========================================================================================
158
+
159
+ bugs.each do |f|
160
+ task_name = File.basename(f, ".rb")
161
+ dir_name = File.dirname(f)
162
+ MakeTask.new("bugs", dir_name, task_name, false, <<-Desc)
163
+ Executes misc #{task_name}
164
+ Desc
165
+ end
152
166
 
153
167
  #===========================================================================================
154
168
  # Creates task for running gknit
data/bin/grun CHANGED
@@ -2,4 +2,4 @@
2
2
 
3
3
  # Dir.chdir(File.dirname(File.expand_path('.', __FILE__)))
4
4
 
5
- exec "ruby --polyglot --jvm --experimental-options --single_threaded -S #{ARGV[0]}"
5
+ exec "ruby --polyglot --jvm --experimental-options --single-threaded -S #{ARGV[0]}"
@@ -5,4 +5,4 @@ Dir.chdir(File.dirname(File.expand_path('.', __FILE__)))
5
5
  puts "Loading IRB and Galaaz... Please wait!"
6
6
 
7
7
  # exec "ruby --polyglot --jvm -Xsingle_threaded -S pry -r ./gstudio.rb"
8
- exec "ruby --polyglot --jvm --experimental-options --single_threaded -S irb -r ./gstudio.rb"
8
+ exec "ruby --polyglot --jvm --experimental-options --single-threaded -S irb -r ./gstudio.rb"