filipinomemes 1.0.3 → 1.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +28 -556
  3. data/bin/filipinomemes +6 -1
  4. data/lib/filipinomemes.rb +2 -1
  5. data/lib/filipinomemes/compiler.rb +4 -3
  6. data/lib/filipinomemes/core_ext.rb +1 -0
  7. data/lib/filipinomemes/core_ext/array.rb +2 -0
  8. data/lib/filipinomemes/core_ext/class.rb +2 -0
  9. data/lib/filipinomemes/core_ext/enumerator.rb +2 -0
  10. data/lib/filipinomemes/core_ext/integer.rb +2 -0
  11. data/lib/filipinomemes/core_ext/kernel.rb +2 -0
  12. data/lib/filipinomemes/core_ext/module.rb +2 -0
  13. data/lib/filipinomemes/core_ext/range.rb +2 -0
  14. data/lib/filipinomemes/core_ext/string.rb +2 -0
  15. data/lib/filipinomemes/ruby_parser_patches.rb +14 -0
  16. data/lib/filipinomemes/version.rb +2 -1
  17. data/sample_programs/array.bt +4 -0
  18. data/sample_programs/conditions.bt +8 -0
  19. data/sample_programs/group.bt +13 -0
  20. data/sample_programs/helloworld.bt +3 -0
  21. data/sample_programs/magbibigay.bt +13 -13
  22. data/sample_programs/module.bt +10 -0
  23. data/sample_programs/{o_ang.bt → or.bt} +0 -0
  24. data/spec/filipinomemes/compiler_spec.rb +11 -4
  25. data/spec/spec_helper.rb +1 -3
  26. metadata +8 -25
  27. data/sample_programs/agapan.bt +0 -5
  28. data/sample_programs/alyas.bt +0 -9
  29. data/sample_programs/batotris.bt +0 -286
  30. data/sample_programs/bilang.bt +0 -10
  31. data/sample_programs/dapat.bt +0 -9
  32. data/sample_programs/habang.bt +0 -7
  33. data/sample_programs/ihinto.bt +0 -8
  34. data/sample_programs/kontrol-sa-pagiikot.bt +0 -45
  35. data/sample_programs/kumusta_mundo.bt +0 -5
  36. data/sample_programs/maliban_na.bt +0 -12
  37. data/sample_programs/modyul.bt +0 -20
  38. data/sample_programs/nakatukoy.bt +0 -13
  39. data/sample_programs/ngunit_kapag.bt +0 -8
  40. data/sample_programs/pamamaraan-sa-pagkakamali.bt +0 -11
  41. data/sample_programs/pangalan.bt +0 -10
  42. data/sample_programs/panguri.bt +0 -13
  43. data/sample_programs/panuntunan.bt +0 -23
  44. data/sample_programs/para_sa.bt +0 -4
  45. data/sample_programs/pibonasyi.bt +0 -59
  46. data/sample_programs/siguraduhin.bt +0 -8
  47. data/sample_programs/tanggalin.bt +0 -23
  48. data/sample_programs/timebomb.bt +0 -36
@@ -1,10 +0,0 @@
1
- mojul Tinapay
2
- grupo Donut
3
- dep flavor
4
- panomonasabe 'Strawberry!'
5
- finish_na
6
- finish_na
7
- finish_na
8
-
9
- tinapay = Tinapay::Donut.bago
10
- tinapay.flavor
@@ -1,9 +0,0 @@
1
- panulat_mo = "lapis"
2
-
3
- papel = hakdog panulat_mo
4
- wen "lapis" den "bond paper"
5
- wen "ballpen" den "dilaw na papel"
6
- ginagawa_mue "intermediate paper"
7
- finish_na
8
-
9
- panomonasabe "Ang papel na gagamitin mo ay #{papel}"
@@ -1,7 +0,0 @@
1
- may_buhay = israel
2
-
3
- ako_magisip may_buhay
4
- panomonasabe 'may pag-asa!'
5
-
6
- auko_na
7
- finish_na
@@ -1,8 +0,0 @@
1
- nakamit = isrong
2
-
3
- ako_magisip nakamit == isrong
4
- panomonasabe 'hindi pa nakakamit!'
5
- auko_na
6
- finish_na
7
-
8
- panomonasabe 'nakamit na!'
@@ -1,45 +0,0 @@
1
- # its loop
2
- ['a','b','c','d'].its adbans |titik|
3
- panomonasabe "Ang titik ay #{titik}"
4
- finish_na
5
-
6
- # its loop on range
7
- (1..10).its adbans |numero|
8
- panomonasabe "Ang numero ay #{numero}"
9
- finish_na
10
-
11
- # while loop
12
- numero = 1
13
- ako_magisip numero < 10 adbans
14
- panomonasabe "Ang numero ay #{numero} na"
15
- numero += 1
16
- finish_na
17
-
18
- # begin while
19
- numero = 0
20
- panghuling_numero = 5
21
- glhf
22
- panomonasabe "Ang numero ay #{numero} na"
23
- numero += 1
24
- finish_na ako_magisip numero < panghuling_numero
25
-
26
- # until
27
- numero = 0
28
- panghuling_numero = 5
29
- hanggang_sa_dulo numero > panghuling_numero adbans
30
- panomonasabe "Ang numero ay #{numero} na"
31
- numero += 1
32
- finish_na
33
-
34
- # begin until
35
- numero = 0
36
- panghuling_numero = 5
37
- glhf
38
- panomonasabe "Ang numero ay #{numero} na"
39
- numero += 1
40
- finish_na hanggang_sa_dulo numero < panghuling_numero
41
-
42
- # for loop
43
- por numero insayd 0..5
44
- panomonasabe "Ang numero ay #{numero} na"
45
- finish_na
@@ -1,5 +0,0 @@
1
- ip 1 > 0
2
- panomonasabe "Kumusta mundo!"
3
- ginagawa_mue
4
- panomonasabe "Mayroong sira"
5
- finish_na
@@ -1,12 +0,0 @@
1
- mga_persona = [
2
- { pangalan: 'Gener', kasarian: 'lalaki' },
3
- { pangalan: 'Karmen', kasarian: 'babae' }
4
- ]
5
-
6
- mga_persona.its adbans |tao|
7
- payless tao[:kasarian] == 'lalaki'
8
- panomonasabe "si #{tao[:pangalan]} ay babae!"
9
- ginagawa_mue
10
- panomonasabe "si #{tao[:pangalan]} ay lalaki!"
11
- finish_na
12
- finish_na
@@ -1,20 +0,0 @@
1
- mojul MgaAlagangHayop
2
- KAILANGAN_DAMI_NG_ASO = 5
3
- grupo Aso
4
- dep tahol
5
- panomonasabe "Woof..."
6
- finish_na
7
-
8
- dep kumanin
9
- panomonasabe "..."
10
- finish_na
11
-
12
- dep ikembot_ang_buntot
13
- panomonasabe "Ginagawa ko ito dahil masaya ako!"
14
- finish_na
15
- finish_na
16
- finish_na
17
-
18
- dami = 6
19
- browny = MgaAlagangHayop::Aso.bago
20
- browny.ikembot_ang_buntot ip dami >= MgaAlagangHayop::KAILANGAN_DAMI_NG_ASO
@@ -1,13 +0,0 @@
1
- mojul Manggagawa
2
- grupo Magsasaka
3
- dep pananim
4
- ['sibuyas', 'kamatis', 'sili', 'palay', 'mais'].its adbans |pananim|
5
- panomonasabe "Mag tatanim ng #{pananim} ngayong panahon"
6
- finish_na
7
- finish_na
8
- finish_na
9
- finish_na
10
-
11
- kung abugbug(Manggagawa::Magsasaka)
12
- panomonasabe 'May nakatukoy!'
13
- finish_na
@@ -1,8 +0,0 @@
1
- pangalan_mo = "Masipag"
2
- agik pangalan_mo == "Matipuno"
3
- panomonasabe "Ikaw ay si Matipuno!"
4
- agik_ginagawa_mue pangalan_mo == "Masipag"
5
- panomonasabe "Ikaw ay si Masipag!"
6
- ginagawa_mue
7
- panomonasabe "Wala kang rekord dito!"
8
- finish_na
@@ -1,11 +0,0 @@
1
- bilang_ng_pagkakamali = 0
2
- glhf
3
- # mag komento kung hindi sigurado
4
- 1 / 0
5
- reskyu => pagkakamali
6
- bilang_ng_pagkakamali += 1
7
- neba_gibap ip bilang_ng_pagkakamali < 3
8
- rays "malubhang pagkakamali"
9
- may_raket
10
- panomonasabe "den na"
11
- finish_na
@@ -1,10 +0,0 @@
1
- dep panomonasabeAngPangalan(pangalan = wala)
2
- ip pangalan != wala
3
- panomonasabe "Magandang araw sa iyo #{pangalan}!"
4
- ginagawa_mue
5
- panomonasabe "Magandang araw!"
6
- finish_na
7
- finish_na
8
-
9
- panomonasabeAngPangalan "Maria" # => "Magandang araw sa iyo Maria!"
10
- panomonasabeAngPangalan # => "Magandang araw!"
@@ -1,13 +0,0 @@
1
- grupo Pangalan
2
- aksesor :pangalan
3
-
4
- dep initialize(pangalan)
5
- @pangalan = pangalan
6
- finish_na
7
-
8
- dep ipakitaAngPangalan
9
- panomonasabe selp.pangalan
10
- finish_na
11
- finish_na
12
-
13
- Pangalan.bago('Joel').ipakitaAngPangalan
@@ -1,23 +0,0 @@
1
- dep gumawaNgID(estudyante = {})
2
- pangalan = estudyante[:pangalan]
3
- edad = estudyante[:edad]
4
- tirahan = estudyante[:tirahan]
5
- baitang = estudyante[:baitang]
6
- seksiyon = estudyante[:seksiyon]
7
-
8
- panomonasabe <<-FINISH_NA
9
- Pangalan: #{pangalan}
10
- Edad: #{edad}
11
- Tirahan: #{tirahan}
12
- Baitang: #{baitang}
13
- Seksiyon: #{seksiyon}
14
- FINISH_NA
15
- finish_na
16
-
17
- gumawaNgID({
18
- pangalan: "Maliksi Batubalani",
19
- edad: "13",
20
- tirahan: "Ilocos",
21
- baitang: "6",
22
- seksiyon: "Masisipag"
23
- })
@@ -1,4 +0,0 @@
1
- listahan_ng_mga_prutas = ["mansanas", "mangga", "guava", "santol", "ubas"]
2
- poreber prutas insayd listahan_ng_mga_prutas adbans
3
- panomonasabe prutas.kapitalays
4
- finish_na
@@ -1,59 +0,0 @@
1
- dep pibonasyi(n, n1 = 1, n2 = 1)
2
- ip n <= 2
3
- [0, n1, n2][n]
4
- ginagawa_mue
5
- sagot = wala
6
- (n-2).ulit adbans
7
- sagot = n1 + n2
8
- n1 = n2
9
- n2 = sagot
10
- finish_na
11
- sagot
12
- finish_na
13
- finish_na
14
-
15
- dep pibonasyingPagsuksok(n, n1 = 1, n2 = 1)
16
- ip n <= 2
17
- [0, n1, n2][n]
18
- ginagawa_mue
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
- finish_na
23
- finish_na
24
-
25
- dep pibonasyingInuulit(n, n1 = 1, n2 = 1)
26
- ip n <= 2
27
- binhi = [0, n1, n2]
28
- binhi[n]
29
- ginagawa_mue
30
- pibonasyingInuulit(n-1, n1, n2) + pibonasyingInuulit(n-2, n1, n2)
31
- finish_na
32
- finish_na
33
-
34
- dep pibonasyingBuntutangInuulit(n, n1 = 1, n2 = 1)
35
- magbalik n1 ip n <= 1
36
- magbalik n2 ip n == 2
37
- magbalik pibonasyi(n - 1, n2, n1 + n2)
38
- finish_na
39
-
40
- dep pibonasyingPaguulit(n, n1 = 1, n2 = 1)
41
- (2..n).its {
42
- n1, n2 = n2, n1 + n2
43
- }
44
- magbalik n1
45
- finish_na
46
-
47
- dep pibonasyingPaguulitNaUmiikot(n, n1 = 1, n2 = 1)
48
- poreber i insayd 2..n
49
- n1, n2 = n2, n1 + n2
50
- finish_na
51
- magbalik n1
52
- finish_na
53
-
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 +0,0 @@
1
- wala_na
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
- finish_na
@@ -1,23 +0,0 @@
1
- mojul Hayop
2
- grupo Aso
3
- dep tahol
4
- panomonasabe 'baw waw!'
5
- finish_na
6
- finish_na
7
- finish_na
8
-
9
- grupo Pusa < Hayop::Aso
10
- una_ulo tahol
11
-
12
- dep meow
13
- panomonasabe 'meow wahu!'
14
- finish_na
15
- finish_na
16
-
17
- pusa = Pusa.bago
18
-
19
- wala_na
20
- pusa.tahol
21
- reskyu => pagkakamali
22
- panomonasabe "ang pagkakamali ay '#{pagkakamali}'"
23
- finish_na
@@ -1,36 +0,0 @@
1
- # Filipinomemes Programming Language (https://github.com/zephyrum14/filipinomemes)
2
-
3
- mojul TimeBomb
4
- BILANG = 5
5
- grupo Bomba
6
- dep tik
7
- panomonasabe 'tik'
8
- finish_na
9
-
10
- dep tok
11
- panomonasabe 'tok'
12
- finish_na
13
-
14
- dep sabog
15
- panomonasabe 'kaboom!'
16
- finish_na
17
- finish_na
18
- finish_na
19
-
20
- pasabog = TimeBomb::Bomba.bago
21
-
22
- numero = 1
23
- ako_magisip numero <= TimeBomb::BILANG adbans
24
- panomonasabe "#{numero}"
25
-
26
- ip (numero == TimeBomb::BILANG)
27
- pasabog.sabog
28
- agik_ginagawa_mue (numero % 2) != 0
29
- pasabog.tik
30
- agik_ginagawa_mue (numero % 2) == 0
31
- pasabog.tok
32
- finish_na
33
-
34
- tulog_ako 1
35
- numero += 1
36
- finish_na