filipinomemes 1.0.1 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +153 -168
  3. data/lib/filipinomemes/core_ext/array.rb +8 -15
  4. data/lib/filipinomemes/core_ext/class.rb +1 -2
  5. data/lib/filipinomemes/core_ext/enumerator.rb +1 -1
  6. data/lib/filipinomemes/core_ext/integer.rb +0 -1
  7. data/lib/filipinomemes/core_ext/kernel.rb +3 -11
  8. data/lib/filipinomemes/core_ext/module.rb +2 -2
  9. data/lib/filipinomemes/core_ext/range.rb +1 -4
  10. data/lib/filipinomemes/core_ext/string.rb +7 -11
  11. data/lib/filipinomemes/ruby_parser_patches.rb +38 -60
  12. data/lib/filipinomemes/version.rb +1 -1
  13. data/sample_programs/agapan.bt +2 -2
  14. data/sample_programs/alyas.bt +4 -4
  15. data/sample_programs/batotris.bt +66 -66
  16. data/sample_programs/bilang.bt +5 -5
  17. data/sample_programs/dapat.bt +3 -3
  18. data/sample_programs/habang.bt +2 -2
  19. data/sample_programs/ihinto.bt +4 -4
  20. data/sample_programs/kontrol-sa-pagiikot.bt +14 -14
  21. data/sample_programs/kumusta_mundo.bt +2 -2
  22. data/sample_programs/magbibigay.bt +8 -8
  23. data/sample_programs/maliban_na.bt +4 -4
  24. data/sample_programs/modyul.bt +9 -9
  25. data/sample_programs/nakatukoy.bt +7 -7
  26. data/sample_programs/ngunit_kapag.bt +3 -3
  27. data/sample_programs/o_ang.bt +2 -2
  28. data/sample_programs/pamamaraan-sa-pagkakamali.bt +5 -5
  29. data/sample_programs/pangalan.bt +5 -5
  30. data/sample_programs/panguri.bt +5 -5
  31. data/sample_programs/panuntunan.bt +4 -4
  32. data/sample_programs/para_sa.bt +2 -2
  33. data/sample_programs/pibonasyi.bt +17 -17
  34. data/sample_programs/siguraduhin.bt +6 -6
  35. data/sample_programs/tanggalin.bt +9 -9
  36. data/sample_programs/timebomb.bt +10 -10
  37. data/spec/filipinomemes/compiler_spec.rb +23 -23
  38. data/spec/spec_helper.rb +1 -1
  39. metadata +2 -2
@@ -1,14 +1,14 @@
1
- ang gumawaNgID
2
- mag_print "------------------------------------------"
3
-
4
- magbigay_daan
5
-
6
- mag_print "------------------------------------------"
1
+ dep gumawaNgID
2
+ panomonasabe "------------------------------------------"
3
+
4
+ dewei
5
+
6
+ panomonasabe "------------------------------------------"
7
7
  finish_na
8
8
 
9
- ang ID(impormasyon = {})
9
+ dep ID(impormasyon = {})
10
10
  gumawaNgID adbans
11
- mag_print <<-FINISH_NA
11
+ panomonasabe <<-FINISH_NA
12
12
  Pangalan: #{impormasyon[:pangalan]}
13
13
  Edad: #{impormasyon[:edad]}
14
14
  Tirahan: #{impormasyon[:tirahan]}
@@ -3,10 +3,10 @@ mga_persona = [
3
3
  { pangalan: 'Karmen', kasarian: 'babae' }
4
4
  ]
5
5
 
6
- mga_persona.isaisahin adbans |tao|
7
- malibang tao[:kasarian] == 'lalaki'
8
- mag_print "si #{tao[:pangalan]} ay babae!"
6
+ mga_persona.its adbans |tao|
7
+ payless tao[:kasarian] == 'lalaki'
8
+ panomonasabe "si #{tao[:pangalan]} ay babae!"
9
9
  ginagawa_mue
10
- mag_print "si #{tao[:pangalan]} ay lalaki!"
10
+ panomonasabe "si #{tao[:pangalan]} ay lalaki!"
11
11
  finish_na
12
12
  finish_na
@@ -1,20 +1,20 @@
1
- grupo MgaAlagangHayop
1
+ mojul MgaAlagangHayop
2
2
  KAILANGAN_DAMI_NG_ASO = 5
3
3
  bilang Aso
4
- ang tahol
5
- mag_print "Woof..."
4
+ dep tahol
5
+ panomonasabe "Woof..."
6
6
  finish_na
7
7
 
8
- ang kumanin
9
- mag_print "..."
8
+ dep kumanin
9
+ panomonasabe "..."
10
10
  finish_na
11
11
 
12
- ang ikembot_ang_buntot
13
- mag_print "Ginagawa ko ito dahil masaya ako!"
12
+ dep ikembot_ang_buntot
13
+ panomonasabe "Ginagawa ko ito dahil masaya ako!"
14
14
  finish_na
15
- finish_na
15
+ finish_na
16
16
  finish_na
17
17
 
18
18
  dami = 6
19
- browny = MgaAlagangHayop::Aso.gumawa
19
+ browny = MgaAlagangHayop::Aso.bago
20
20
  browny.ikembot_ang_buntot ip dami >= MgaAlagangHayop::KAILANGAN_DAMI_NG_ASO
@@ -1,13 +1,13 @@
1
- grupo Manggagawa
1
+ mojul Manggagawa
2
2
  bilang Magsasaka
3
- ang pananim
4
- ['sibuyas', 'kamatis', 'sili', 'palay', 'mais'].isaisahin adbans |pananim|
5
- mag_print "Mag tatanim ng #{pananim} ngayong panahon"
3
+ dep pananim
4
+ ['sibuyas', 'kamatis', 'sili', 'palay', 'mais'].its adbans |pananim|
5
+ panomonasabe "Mag tatanim ng #{pananim} ngayong panahon"
6
6
  finish_na
7
7
  finish_na
8
8
  finish_na
9
9
  finish_na
10
10
 
11
- kung nakatukoy?(Manggagawa::Magsasaka)
12
- mag_print 'May nakatukoy!'
13
- finish_na
11
+ kung abugbug(Manggagawa::Magsasaka)
12
+ panomonasabe 'May nakatukoy!'
13
+ finish_na
@@ -1,8 +1,8 @@
1
1
  pangalan_mo = "Masipag"
2
2
  agik pangalan_mo == "Matipuno"
3
- mag_print "Ikaw ay si Matipuno!"
3
+ panomonasabe "Ikaw ay si Matipuno!"
4
4
  agik_ginagawa_mue pangalan_mo == "Masipag"
5
- mag_print "Ikaw ay si Masipag!"
5
+ panomonasabe "Ikaw ay si Masipag!"
6
6
  ginagawa_mue
7
- mag_print "Wala kang rekord dito!"
7
+ panomonasabe "Wala kang rekord dito!"
8
8
  finish_na
@@ -1,3 +1,3 @@
1
- ip (istroo o mali)
2
- mag_print 'istroo'
1
+ ip (israel o isrong)
2
+ panomonasabe 'israel'
3
3
  finish_na
@@ -1,11 +1,11 @@
1
1
  bilang_ng_pagkakamali = 0
2
2
  glhf
3
- # mag komento ip hindi sigurado
3
+ # mag komento kung hindi sigurado
4
4
  1 / 0
5
- agapan => pagkakamali
5
+ reskyu => pagkakamali
6
6
  bilang_ng_pagkakamali += 1
7
7
  neba_gibap ip bilang_ng_pagkakamali < 3
8
- iangat "malubhang pagkakamali"
9
- siguraduhing
10
- mag_print "Tapos na"
8
+ rays "malubhang pagkakamali"
9
+ may_raket
10
+ panomonasabe "den na"
11
11
  finish_na
@@ -1,10 +1,10 @@
1
- ang iprintAngPangalan(pangalan = wala)
1
+ dep panomonasabeAngPangalan(pangalan = wala)
2
2
  ip pangalan != wala
3
- mag_print "Magandang araw sa iyo #{pangalan}!"
3
+ panomonasabe "Magandang araw sa iyo #{pangalan}!"
4
4
  ginagawa_mue
5
- mag_print "Magandang araw!"
5
+ panomonasabe "Magandang araw!"
6
6
  finish_na
7
7
  finish_na
8
8
 
9
- iprintAngPangalan "Maria" # => "Magandang araw sa iyo Maria!"
10
- iprintAngPangalan # => "Magandang araw!"
9
+ panomonasabeAngPangalan "Maria" # => "Magandang araw sa iyo Maria!"
10
+ panomonasabeAngPangalan # => "Magandang araw!"
@@ -1,13 +1,13 @@
1
1
  bilang Pangalan
2
- panguri :pangalan
2
+ aksesor :pangalan
3
3
 
4
- ang initialize(pangalan)
4
+ dep initialize(pangalan)
5
5
  @pangalan = pangalan
6
6
  finish_na
7
7
 
8
- ang ipakitaAngPangalan
9
- mag_print mayselp.pangalan
8
+ dep ipakitaAngPangalan
9
+ panomonasabe selp.pangalan
10
10
  finish_na
11
11
  finish_na
12
12
 
13
- Pangalan.gumawa('Joel').ipakitaAngPangalan
13
+ Pangalan.bago('Joel').ipakitaAngPangalan
@@ -1,11 +1,11 @@
1
- ang gumawaNgID(estudyante = {})
1
+ dep gumawaNgID(estudyante = {})
2
2
  pangalan = estudyante[:pangalan]
3
3
  edad = estudyante[:edad]
4
4
  tirahan = estudyante[:tirahan]
5
5
  baitang = estudyante[:baitang]
6
6
  seksiyon = estudyante[:seksiyon]
7
-
8
- mag_print <<-FINISH_NA
7
+
8
+ panomonasabe <<-FINISH_NA
9
9
  Pangalan: #{pangalan}
10
10
  Edad: #{edad}
11
11
  Tirahan: #{tirahan}
@@ -20,4 +20,4 @@ gumawaNgID({
20
20
  tirahan: "Ilocos",
21
21
  baitang: "6",
22
22
  seksiyon: "Masisipag"
23
- })
23
+ })
@@ -1,4 +1,4 @@
1
1
  listahan_ng_mga_prutas = ["mansanas", "mangga", "guava", "santol", "ubas"]
2
- para_sa prutas na_nasa listahan_ng_mga_prutas adbans
3
- mag_print prutas.sa_malaking_titik
2
+ poreber prutas insayd listahan_ng_mga_prutas adbans
3
+ panomonasabe prutas.kapitalays
4
4
  finish_na
@@ -1,4 +1,4 @@
1
- ang pibonasyi(n, n1 = 1, n2 = 1)
1
+ dep pibonasyi(n, n1 = 1, n2 = 1)
2
2
  ip n <= 2
3
3
  [0, n1, n2][n]
4
4
  ginagawa_mue
@@ -12,17 +12,17 @@ ang pibonasyi(n, n1 = 1, n2 = 1)
12
12
  finish_na
13
13
  finish_na
14
14
 
15
- ang pibonasyingPagsuksok(n, n1 = 1, n2 = 1)
15
+ dep pibonasyingPagsuksok(n, n1 = 1, n2 = 1)
16
16
  ip n <= 2
17
17
  [0, n1, n2][n]
18
18
  ginagawa_mue
19
- ([wala].umikot.kumuha(n-2).ipasok([n1, n2]) adbans |nakaraan, x|
20
- nakaraan.magbagsak(1).itulak(nakaraan[0] + nakaraan[1])
21
- finish_na).huli
19
+ ([wala].pinaikot.kuha(n-2).pushmoyante([n1, n2]) adbans |nakaraan, x|
20
+ nakaraan.boombagsak(1).pushmoyante(nakaraan[0] + nakaraan[1])
21
+ finish_na).gg
22
22
  finish_na
23
23
  finish_na
24
24
 
25
- ang pibonasyingInuulit(n, n1 = 1, n2 = 1)
25
+ dep pibonasyingInuulit(n, n1 = 1, n2 = 1)
26
26
  ip n <= 2
27
27
  binhi = [0, n1, n2]
28
28
  binhi[n]
@@ -31,29 +31,29 @@ ang pibonasyingInuulit(n, n1 = 1, n2 = 1)
31
31
  finish_na
32
32
  finish_na
33
33
 
34
- ang pibonasyingBuntutangInuulit(n, n1 = 1, n2 = 1)
34
+ dep pibonasyingBuntutangInuulit(n, n1 = 1, n2 = 1)
35
35
  magbalik n1 ip n <= 1
36
36
  magbalik n2 ip n == 2
37
37
  magbalik pibonasyi(n - 1, n2, n1 + n2)
38
38
  finish_na
39
39
 
40
- ang pibonasyingPaguulit(n, n1 = 1, n2 = 1)
41
- (2..n).sa_bawat_isa {
40
+ dep pibonasyingPaguulit(n, n1 = 1, n2 = 1)
41
+ (2..n).its {
42
42
  n1, n2 = n2, n1 + n2
43
43
  }
44
44
  magbalik n1
45
45
  finish_na
46
46
 
47
- ang pibonasyingPaguulitNaUmiikot(n, n1 = 1, n2 = 1)
48
- para_sa i sa 2..n
47
+ dep pibonasyingPaguulitNaUmiikot(n, n1 = 1, n2 = 1)
48
+ poreber i insayd 2..n
49
49
  n1, n2 = n2, n1 + n2
50
50
  finish_na
51
51
  magbalik n1
52
52
  finish_na
53
53
 
54
- mag_print "Gamit ang Panuntunang Pibonasyi sa 10 ay #{pibonasyi 10}"
55
- mag_print "Gamit ang Panuntunang Pibonasying May Pagsuksok sa 9 ay #{pibonasyingPagsuksok 9}"
56
- mag_print "Gamit ang Panuntunang Pibonasying Inuulit sa 8 ay #{pibonasyingInuulit 8}"
57
- mag_print "Gamit ang Panuntunang Pibonasying May Buntot na Inuulit sa 7 ay #{pibonasyingBuntutangInuulit 7}"
58
- mag_print "Gamit ang Panuntunang Pibonasying Paguulit sa 6 ay #{pibonasyingPaguulit 6}"
59
- mag_print "Gamit ang Panuntunang Pibonasying Paguulit na Umiikot sa 5 ay #{pibonasyingPaguulitNaUmiikot 5}"
54
+ panomonasabe "Gamit ang Panuntunang Pibonasyi sa 10 ay #{pibonasyi 10}"
55
+ panomonasabe "Gamit ang Panuntunang Pibonasying May Pagsuksok sa 9 ay #{pibonasyingPagsuksok 9}"
56
+ panomonasabe "Gamit ang Panuntunang Pibonasying Inuulit sa 8 ay #{pibonasyingInuulit 8}"
57
+ panomonasabe "Gamit ang Panuntunang Pibonasying May Buntot na Inuulit sa 7 ay #{pibonasyingBuntutangInuulit 7}"
58
+ panomonasabe "Gamit ang Panuntunang Pibonasying Paguulit sa 6 ay #{pibonasyingPaguulit 6}"
59
+ panomonasabe "Gamit ang Panuntunang Pibonasying Paguulit na Umiikot sa 5 ay #{pibonasyingPaguulitNaUmiikot 5}"
@@ -1,8 +1,8 @@
1
1
  wala_na
2
- itaas "Chismosa!"
3
- agapan
4
- mag_print "Balik sa trabaho!"
5
- itaas "May kaguluhan!"
6
- siguraduhing
7
- mag_print "Walang kakain kung hindi tapos!"
2
+ rays "Chismosa!"
3
+ reskyu
4
+ panomonasabe "Balik sa trabaho!"
5
+ rays "May kaguluhan!"
6
+ may_raket
7
+ panomonasabe "Walang kakain kung hindi den!"
8
8
  finish_na
@@ -1,23 +1,23 @@
1
- grupo Hayop
1
+ mojul Hayop
2
2
  bilang Aso
3
- ang tahol
4
- mag_print 'baw waw!'
3
+ dep tahol
4
+ panomonasabe 'baw waw!'
5
5
  finish_na
6
6
  finish_na
7
7
  finish_na
8
8
 
9
9
  bilang Pusa < Hayop::Aso
10
- tanggalin tahol
10
+ una_ulo tahol
11
11
 
12
- ang meow
13
- mag_print 'meow wahu!'
12
+ dep meow
13
+ panomonasabe 'meow wahu!'
14
14
  finish_na
15
15
  finish_na
16
16
 
17
- pusa = Pusa.kumatawan
17
+ pusa = Pusa.bago
18
18
 
19
19
  wala_na
20
20
  pusa.tahol
21
- agapan => pagkakamali
22
- mag_print "ang pagkakamali ay '#{pagkakamali}'"
21
+ reskyu => pagkakamali
22
+ panomonasabe "ang pagkakamali ay '#{pagkakamali}'"
23
23
  finish_na
@@ -1,27 +1,27 @@
1
1
  # Filipinomemes Programming Language (https://github.com/zephyrum14/filipinomemes)
2
2
 
3
- grupo TimeBomb
3
+ mojul TimeBomb
4
4
  BILANG = 5
5
5
  bilang Bomba
6
- ang tik
7
- mag_print 'tik'
6
+ dep tik
7
+ panomonasabe 'tik'
8
8
  finish_na
9
9
 
10
- ang tok
11
- mag_print 'tok'
10
+ dep tok
11
+ panomonasabe 'tok'
12
12
  finish_na
13
13
 
14
- ang sabog
15
- mag_print 'kaboom!'
14
+ dep sabog
15
+ panomonasabe 'kaboom!'
16
16
  finish_na
17
17
  finish_na
18
18
  finish_na
19
19
 
20
- pasabog = TimeBomb::Bomba.gumawa
20
+ pasabog = TimeBomb::Bomba.bago
21
21
 
22
22
  numero = 1
23
23
  ako_magisip numero <= TimeBomb::BILANG adbans
24
- mag_print "#{numero}"
24
+ panomonasabe "#{numero}"
25
25
 
26
26
  ip (numero == TimeBomb::BILANG)
27
27
  pasabog.sabog
@@ -31,6 +31,6 @@ ako_magisip numero <= TimeBomb::BILANG adbans
31
31
  pasabog.tok
32
32
  finish_na
33
33
 
34
- matulog 1
34
+ tulog_ako 1
35
35
  numero += 1
36
36
  finish_na
@@ -28,23 +28,23 @@ isalaysay_ang 'Compiler' do
28
28
  end
29
29
 
30
30
  isalaysay_ang 'ekspresyong Boolean' do
31
- ito_ang 'ekspresyon ng truts o true' do
32
- compiler.zephyrum('truts').should == starting_code + 'true'
31
+ ito_ang 'ekspresyon ng israel o true' do
32
+ compiler.zephyrum('israel').should == starting_code + 'true'
33
33
  end
34
34
 
35
- ito_ang 'ekspresyon ng mali o false' do
36
- compiler.zephyrum('mali').should == starting_code + 'false'
35
+ ito_ang 'ekspresyon ng isrong o false' do
36
+ compiler.zephyrum('isrong').should == starting_code + 'false'
37
37
  end
38
38
 
39
39
  ito_ang 'ekspresyon ng hindi o not' do
40
- compiler.zephyrum('hindi truts').should == starting_code + '(not true)'
40
+ compiler.zephyrum('hindi israel').should == starting_code + '(not true)'
41
41
  end
42
42
  end
43
43
 
44
44
  isalaysay_ang 'susing mga salita' do
45
- ito_ang 'ekspresyon ng agik / dapat / agik_ginagawa_mue / ginagawa_mue / finish_na' do
45
+ ito_ang 'ekspresyon ng agik / den / agik_ginagawa_mue / ginagawa_mue / finish_na' do
46
46
  compiler.zephyrum('
47
- agik 1 dapat
47
+ agik 1 den
48
48
  2
49
49
  agik_ginagawa_mue 3
50
50
  4
@@ -54,11 +54,11 @@ isalaysay_ang 'Compiler' do
54
54
  '1 ? (2) : (3 ? (4) : (5))')
55
55
  end
56
56
 
57
- ito_ang 'ekspresyon ng hakdog / pagka / dapat / ginagawa_mue / finish_na' do
57
+ ito_ang 'ekspresyon ng hakdog / wen / den / ginagawa_mue / finish_na' do
58
58
  compiler.zephyrum("
59
59
  hakdog 1
60
- pagka 1 dapat 1
61
- pagka 2
60
+ wen 1 den 1
61
+ wen 2
62
62
  2
63
63
  ginagawa_mue
64
64
  3
@@ -73,44 +73,44 @@ isalaysay_ang 'Compiler' do
73
73
  end')
74
74
  end
75
75
 
76
- ito_ang 'glhf / iligtas / iangat / siguraduhing / finish_na' do
76
+ ito_ang 'glhf / reskyu / rays / may_raket / finish_na' do
77
77
  # raise ir Kernel metode nevis atslēgvārds
78
78
  compiler.zephyrum('
79
79
  glhf
80
80
  1 / 0
81
- iligtas => pagkakamali
81
+ reskyu => pagkakamali
82
82
  neba_gibap
83
- iangat pagkakamali, pagkakamali.iulat
84
- siguraduhing
85
- mag_print "Katapusan"
83
+ rays pagkakamali, pagkakamali.iulat
84
+ may_raket
85
+ panomonasabe "Katapusan"
86
86
  finish_na').should be_like(starting_code +
87
87
  'begin
88
88
  (1 / 0)
89
89
  rescue => pagkakamali
90
90
  retry
91
- iangat(pagkakamali, pagkakamali.iulat)
91
+ rays(pagkakamali, pagkakamali.iulat)
92
92
  ensure
93
- mag_print("Katapusan")
93
+ panomonasabe("Katapusan")
94
94
  end')
95
95
  end
96
96
  end
97
97
 
98
98
  isalaysay_ang 'pamamaraan sa Kernel' do
99
- ito_ang "ekspresyon ng pagsusulat gamit ang 'mag_print'" do
100
- compiler.zephyrum("mag_print 'abc'").should ==
101
- starting_code + 'mag_print("abc")'
99
+ ito_ang "ekspresyon ng pagsusulat gamit ang 'panomonasabe'" do
100
+ compiler.zephyrum("panomonasabe 'abc'").should ==
101
+ starting_code + 'panomonasabe("abc")'
102
102
  end
103
103
  end
104
104
 
105
105
  isalaysay_ang 'Dinikit na mga pamamaraan' do
106
106
  ito_ang 'ekspresyon ng pamamaraan sa pagbabaliktad ng mga titik' do
107
- resulta = eval compiler.zephyrum("'magandang araw'.baliktad")
107
+ resulta = eval compiler.zephyrum("'magandang araw'.sikstinayn")
108
108
  resulta.should == 'wara gnadnagam'
109
109
  end
110
110
 
111
111
  ito_ang 'ekspresayon ng pamamaraan sa pagsukat ng haba ng salita' do
112
- resulta = eval compiler.zephyrum("'Pangungusap'.haba")
113
- resulta.should == 11
112
+ resulta = eval compiler.zephyrum("'Zephyrum'.longgadog")
113
+ resulta.should == 8
114
114
  end
115
115
  end
116
116
  end
data/spec/spec_helper.rb CHANGED
@@ -55,7 +55,7 @@ RSpec::Core::MemoizedHelpers::ClassMethods.module_eval do
55
55
  end
56
56
 
57
57
  RSpec::Core::MemoizedHelpers.module_eval do
58
- alias_method :dapat, :should
58
+ alias_method :den, :should
59
59
  end
60
60
 
61
61
  require 'filipinomemes/compiler'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: filipinomemes
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Paul Carag
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-12-05 00:00:00.000000000 Z
11
+ date: 2018-12-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ruby2ruby