filipinomemes 1.0.3 → 1.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +28 -556
- data/bin/filipinomemes +6 -1
- data/lib/filipinomemes.rb +2 -1
- data/lib/filipinomemes/compiler.rb +4 -3
- data/lib/filipinomemes/core_ext.rb +1 -0
- data/lib/filipinomemes/core_ext/array.rb +2 -0
- data/lib/filipinomemes/core_ext/class.rb +2 -0
- data/lib/filipinomemes/core_ext/enumerator.rb +2 -0
- data/lib/filipinomemes/core_ext/integer.rb +2 -0
- data/lib/filipinomemes/core_ext/kernel.rb +2 -0
- data/lib/filipinomemes/core_ext/module.rb +2 -0
- data/lib/filipinomemes/core_ext/range.rb +2 -0
- data/lib/filipinomemes/core_ext/string.rb +2 -0
- data/lib/filipinomemes/ruby_parser_patches.rb +14 -0
- data/lib/filipinomemes/version.rb +2 -1
- data/sample_programs/array.bt +4 -0
- data/sample_programs/conditions.bt +8 -0
- data/sample_programs/group.bt +13 -0
- data/sample_programs/helloworld.bt +3 -0
- data/sample_programs/magbibigay.bt +13 -13
- data/sample_programs/module.bt +10 -0
- data/sample_programs/{o_ang.bt → or.bt} +0 -0
- data/spec/filipinomemes/compiler_spec.rb +11 -4
- data/spec/spec_helper.rb +1 -3
- metadata +8 -25
- data/sample_programs/agapan.bt +0 -5
- data/sample_programs/alyas.bt +0 -9
- data/sample_programs/batotris.bt +0 -286
- data/sample_programs/bilang.bt +0 -10
- data/sample_programs/dapat.bt +0 -9
- data/sample_programs/habang.bt +0 -7
- data/sample_programs/ihinto.bt +0 -8
- data/sample_programs/kontrol-sa-pagiikot.bt +0 -45
- data/sample_programs/kumusta_mundo.bt +0 -5
- data/sample_programs/maliban_na.bt +0 -12
- data/sample_programs/modyul.bt +0 -20
- data/sample_programs/nakatukoy.bt +0 -13
- data/sample_programs/ngunit_kapag.bt +0 -8
- data/sample_programs/pamamaraan-sa-pagkakamali.bt +0 -11
- data/sample_programs/pangalan.bt +0 -10
- data/sample_programs/panguri.bt +0 -13
- data/sample_programs/panuntunan.bt +0 -23
- data/sample_programs/para_sa.bt +0 -4
- data/sample_programs/pibonasyi.bt +0 -59
- data/sample_programs/siguraduhin.bt +0 -8
- data/sample_programs/tanggalin.bt +0 -23
- data/sample_programs/timebomb.bt +0 -36
data/sample_programs/bilang.bt
DELETED
data/sample_programs/dapat.bt
DELETED
data/sample_programs/habang.bt
DELETED
data/sample_programs/ihinto.bt
DELETED
@@ -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,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
|
data/sample_programs/modyul.bt
DELETED
@@ -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
|
data/sample_programs/pangalan.bt
DELETED
@@ -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!"
|
data/sample_programs/panguri.bt
DELETED
@@ -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
|
-
})
|
data/sample_programs/para_sa.bt
DELETED
@@ -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,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
|
data/sample_programs/timebomb.bt
DELETED
@@ -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
|