bato 0.0.9 → 0.0.13

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.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -1
  3. data/Gemfile +2 -0
  4. data/Gemfile.lock +42 -0
  5. data/README.md +106 -74
  6. data/Rakefile +2 -0
  7. data/_config.yml +1 -0
  8. data/bato.gemspec +6 -5
  9. data/bin/bato +17 -11
  10. data/lib/bato/bersiyon.rb +3 -1
  11. data/lib/bato/core_ext/array.rb +5 -0
  12. data/lib/bato/core_ext/class.rb +3 -1
  13. data/lib/bato/core_ext/enumerator.rb +2 -0
  14. data/lib/bato/core_ext/integer.rb +2 -0
  15. data/lib/bato/core_ext/kernel.rb +8 -0
  16. data/lib/bato/core_ext/module.rb +4 -0
  17. data/lib/bato/core_ext/range.rb +2 -0
  18. data/lib/bato/core_ext/string.rb +2 -0
  19. data/lib/bato/core_ext.rb +2 -0
  20. data/lib/bato/ruby_parser_patches.rb +140 -180
  21. data/lib/bato/tagatala.rb +3 -1
  22. data/lib/bato.rb +2 -0
  23. data/mga_halimbawa/agapan.bt +5 -0
  24. data/mga_halimbawa/{alyas.bato → alyas.bt} +1 -1
  25. data/mga_halimbawa/batotris.bt +286 -0
  26. data/mga_halimbawa/{bilang.bato → bilang.bt} +1 -1
  27. data/mga_halimbawa/{dapat.bato → dapat.bt} +1 -1
  28. data/mga_halimbawa/{habang.bato → habang.bt} +1 -1
  29. data/mga_halimbawa/ihinto.bt +8 -0
  30. data/mga_halimbawa/{kontrol-sa-pagiikot.bato → kontrol-sa-pagiikot.bt} +7 -7
  31. data/mga_halimbawa/kumusta_mundo.bt +5 -0
  32. data/mga_halimbawa/{magbibigay.bato → magbibigay.bt} +3 -3
  33. data/mga_halimbawa/{maliban_na.bato → maliban_na.bt} +2 -2
  34. data/mga_halimbawa/{modyul.bato → modyul.bt} +3 -3
  35. data/mga_halimbawa/{nakatukoy.bato → nakatukoy.bt} +2 -2
  36. data/mga_halimbawa/{ngunit_kapag.bato → ngunit_kapag.bt} +3 -3
  37. data/mga_halimbawa/o_ang.bt +3 -0
  38. data/mga_halimbawa/{pamamaraan-sa-pagkakamali.bato → pamamaraan-sa-pagkakamali.bt} +1 -1
  39. data/mga_halimbawa/{pangalan.bato → pangalan.bt} +2 -2
  40. data/mga_halimbawa/panguri.bt +16 -0
  41. data/mga_halimbawa/{panuntunan.bato → panuntunan.bt} +1 -1
  42. data/mga_halimbawa/{para_sa.bato → para_sa.bt} +1 -1
  43. data/mga_halimbawa/{pibonasyi.bato → pibonasyi.bt} +6 -6
  44. data/mga_halimbawa/siguraduhin.bt +8 -0
  45. data/mga_halimbawa/{tanggalin.bato → tanggalin.bt} +3 -3
  46. data/mga_halimbawa/{timebomb.bato → timebomb.bt} +5 -5
  47. data/spec/bato/tagatala_spec.rb +6 -5
  48. data/spec/spec_helper.rb +1 -0
  49. metadata +48 -46
  50. data/mga_halimbawa/agapan.bato +0 -5
  51. data/mga_halimbawa/ihinto.bato +0 -8
  52. data/mga_halimbawa/kumusta_mundo.bato +0 -5
  53. data/mga_halimbawa/o_ang.bato +0 -3
  54. data/mga_halimbawa/panguri.bato +0 -13
  55. data/mga_halimbawa/siguraduhin.bato +0 -8
@@ -2,15 +2,15 @@ grupo MgaAlagangHayop
2
2
  KAILANGAN_DAMI_NG_ASO = 5
3
3
  bilang Aso
4
4
  ang tahol
5
- iprint "Woof..."
5
+ mag_print "Woof..."
6
6
  wakas
7
7
 
8
8
  ang kumanin
9
- iprint "..."
9
+ mag_print "..."
10
10
  wakas
11
11
 
12
12
  ang ikembot_ang_buntot
13
- iprint "Ginagawa ko ito dahil masaya ako!"
13
+ mag_print "Ginagawa ko ito dahil masaya ako!"
14
14
  wakas
15
15
  wakas
16
16
  wakas
@@ -2,12 +2,12 @@ grupo Manggagawa
2
2
  bilang Magsasaka
3
3
  ang pananim
4
4
  ['sibuyas', 'kamatis', 'sili', 'palay', 'mais'].isaisahin na_ganito |pananim|
5
- iprint "Mag tatanim ng #{pananim} ngayong panahon"
5
+ mag_print "Mag tatanim ng #{pananim} ngayong panahon"
6
6
  wakas
7
7
  wakas
8
8
  wakas
9
9
  wakas
10
10
 
11
11
  kung nakatukoy?(Manggagawa::Magsasaka)
12
- iprint 'May nakatukoy!'
12
+ mag_print 'May nakatukoy!'
13
13
  wakas
@@ -1,8 +1,8 @@
1
1
  pangalan_mo = "Masipag"
2
2
  kapag_ang pangalan_mo == "Matipuno"
3
- iprint "Ikaw ay si Matipuno!"
3
+ mag_print "Ikaw ay si Matipuno!"
4
4
  ngunit_kapag_ang pangalan_mo == "Masipag"
5
- iprint "Ikaw ay si Masipag!"
5
+ mag_print "Ikaw ay si Masipag!"
6
6
  maliban_sa_mga_ito
7
- iprint "Wala kang rekord dito!"
7
+ mag_print "Wala kang rekord dito!"
8
8
  wakas
@@ -0,0 +1,3 @@
1
+ kapag (totoo o mali)
2
+ mag_print 'totoo'
3
+ wakas
@@ -7,5 +7,5 @@ agapan => pagkakamali
7
7
  subukang_muli kapag bilang_ng_pagkakamali < 3
8
8
  iangat "malubhang pagkakamali"
9
9
  siguraduhing
10
- iprint "Tapos na"
10
+ mag_print "Tapos na"
11
11
  wakas
@@ -1,8 +1,8 @@
1
1
  ang iprintAngPangalan(pangalan = wala)
2
2
  kapag pangalan != wala
3
- iprint "Magandang araw sa iyo #{pangalan}!"
3
+ mag_print "Magandang araw sa iyo #{pangalan}!"
4
4
  kung_hindi
5
- iprint "Magandang araw!"
5
+ mag_print "Magandang araw!"
6
6
  wakas
7
7
  wakas
8
8
 
@@ -0,0 +1,16 @@
1
+ bilang Robot
2
+ katangian :pangalan, :kakayahan
3
+
4
+ ang magpakilala
5
+ mag_print <<-INTRO
6
+ Ako ay isang Robot!
7
+ Ang pangalan ko ay "#{sariling.pangalan}"
8
+ Ako ay may kakayahang mag "#{sariling.kakayahan}"
9
+ INTRO
10
+ wakas
11
+ wakas
12
+
13
+ robot = Robot.gumawa
14
+ robot.pangalan = "bot-chukoy"
15
+ robot.kakayahan = "tambling"
16
+ robot.magpakilala
@@ -5,7 +5,7 @@ ang gumawaNgID(estudyante = {})
5
5
  baitang = estudyante[:baitang]
6
6
  seksiyon = estudyante[:seksiyon]
7
7
 
8
- iprint <<-KATAPUSAN
8
+ mag_print <<-KATAPUSAN
9
9
  Pangalan: #{pangalan}
10
10
  Edad: #{edad}
11
11
  Tirahan: #{tirahan}
@@ -1,4 +1,4 @@
1
1
  listahan_ng_mga_prutas = ["mansanas", "mangga", "guava", "santol", "ubas"]
2
2
  para_sa prutas na_nasa listahan_ng_mga_prutas ganito_gawin
3
- iprint prutas.sa_malaking_titik
3
+ mag_print prutas.sa_malaking_titik
4
4
  wakas
@@ -51,9 +51,9 @@ ang pibonasyingPaguulitNaUmiikot(n, n1 = 1, n2 = 1)
51
51
  magbalik n1
52
52
  wakas
53
53
 
54
- iprint "Gamit ang Panuntunang Pibonasyi sa 10 ay #{pibonasyi 10}"
55
- iprint "Gamit ang Panuntunang Pibonasying May Pagsuksok sa 9 ay #{pibonasyingPagsuksok 9}"
56
- iprint "Gamit ang Panuntunang Pibonasying Inuulit sa 8 ay #{pibonasyingInuulit 8}"
57
- iprint "Gamit ang Panuntunang Pibonasying May Buntot na Inuulit sa 7 ay #{pibonasyingBuntutangInuulit 7}"
58
- iprint "Gamit ang Panuntunang Pibonasying Paguulit sa 6 ay #{pibonasyingPaguulit 6}"
59
- iprint "Gamit ang Panuntunang Pibonasying Paguulit na Umiikot sa 5 ay #{pibonasyingPaguulitNaUmiikot 5}"
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}"
@@ -0,0 +1,8 @@
1
+ simulan
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!"
8
+ wakas
@@ -1,7 +1,7 @@
1
1
  grupo Hayop
2
2
  bilang Aso
3
3
  ang tahol
4
- iprint 'baw waw!'
4
+ mag_print 'baw waw!'
5
5
  wakas
6
6
  wakas
7
7
  wakas
@@ -10,7 +10,7 @@ bilang Pusa < Hayop::Aso
10
10
  tanggalin tahol
11
11
 
12
12
  ang meow
13
- iprint 'meow wahu!'
13
+ mag_print 'meow wahu!'
14
14
  wakas
15
15
  wakas
16
16
 
@@ -19,5 +19,5 @@ pusa = Pusa.kumatawan
19
19
  simulan
20
20
  pusa.tahol
21
21
  agapan => pagkakamali
22
- iprint "ang pagkakamali ay '#{pagkakamali}'"
22
+ mag_print "ang pagkakamali ay '#{pagkakamali}'"
23
23
  wakas
@@ -4,15 +4,15 @@ grupo TimeBomb
4
4
  BILANG = 5
5
5
  bilang Bomba
6
6
  ang tik
7
- iprint 'tik'
7
+ mag_print 'tik'
8
8
  wakas
9
9
 
10
10
  ang tok
11
- iprint 'tok'
11
+ mag_print 'tok'
12
12
  wakas
13
13
 
14
14
  ang sabog
15
- iprint 'kaboom!'
15
+ mag_print 'kaboom!'
16
16
  wakas
17
17
  wakas
18
18
  wakas
@@ -21,7 +21,7 @@ pasabog = TimeBomb::Bomba.gumawa
21
21
 
22
22
  numero = 1
23
23
  habang numero <= TimeBomb::BILANG ganito
24
- iprint "#{numero}"
24
+ mag_print "#{numero}"
25
25
 
26
26
  kapag (numero == TimeBomb::BILANG)
27
27
  pasabog.sabog
@@ -31,7 +31,7 @@ habang numero <= TimeBomb::BILANG ganito
31
31
  pasabog.tok
32
32
  wakas
33
33
 
34
- sleep 1
34
+ matulog 1
35
35
  numero += 1
36
36
  wakas
37
37
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
 
2
3
  require 'spec_helper'
3
4
 
@@ -83,7 +84,7 @@ isalaysay_ang 'Tagatala' do
83
84
  subukang_muli
84
85
  iangat pagkakamali, pagkakamali.iulat
85
86
  siguraduhing
86
- iprint "Katapusan"
87
+ mag_print "Katapusan"
87
88
  katapusan').should be_like(pasimulang_kodigo +
88
89
  'begin
89
90
  (1 / 0)
@@ -91,15 +92,15 @@ isalaysay_ang 'Tagatala' do
91
92
  retry
92
93
  iangat(pagkakamali, pagkakamali.iulat)
93
94
  ensure
94
- iprint("Katapusan")
95
+ mag_print("Katapusan")
95
96
  end')
96
97
  end
97
98
  end
98
99
 
99
100
  isalaysay_ang 'pamamaraan sa Kernel' do
100
- ito_ang "ekspresyon ng pagsusulat gamit ang 'iprint'" do
101
- tagatala.sa_ruby("iprint 'abc'").should ==
102
- pasimulang_kodigo + 'iprint("abc")'
101
+ ito_ang "ekspresyon ng pagsusulat gamit ang 'mag_print'" do
102
+ tagatala.sa_ruby("mag_print 'abc'").should ==
103
+ pasimulang_kodigo + 'mag_print("abc")'
103
104
  end
104
105
  end
105
106
 
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
 
2
3
  # This file was generated by the `rspec --init` command. Conventionally, all
3
4
  # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
metadata CHANGED
@@ -1,71 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bato
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joel Bryan Juliano
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-11 00:00:00.000000000 Z
11
+ date: 2021-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ruby2ruby
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: 2.4.4
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: 2.4.4
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: 2.2.19
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: 2.2.19
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">="
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: 13.0.6
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">="
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: 13.0.6
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ">="
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0'
61
+ version: 3.10.0
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ">="
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '0'
68
+ version: 3.10.0
69
69
  description: Bato Programming Language
70
70
  email:
71
71
  - joelbryan.juliano@gmail.com
@@ -78,10 +78,12 @@ files:
78
78
  - ".rspec"
79
79
  - ".travis.yml"
80
80
  - Gemfile
81
+ - Gemfile.lock
81
82
  - LICENSE.txt
82
83
  - README.md
83
84
  - Rakefile
84
85
  - TODO.md
86
+ - _config.yml
85
87
  - bato.gemspec
86
88
  - bin/bato
87
89
  - lib/bato.rb
@@ -97,36 +99,37 @@ files:
97
99
  - lib/bato/core_ext/string.rb
98
100
  - lib/bato/ruby_parser_patches.rb
99
101
  - lib/bato/tagatala.rb
100
- - mga_halimbawa/agapan.bato
101
- - mga_halimbawa/alyas.bato
102
- - mga_halimbawa/bilang.bato
103
- - mga_halimbawa/dapat.bato
104
- - mga_halimbawa/habang.bato
105
- - mga_halimbawa/ihinto.bato
106
- - mga_halimbawa/kontrol-sa-pagiikot.bato
107
- - mga_halimbawa/kumusta_mundo.bato
108
- - mga_halimbawa/magbibigay.bato
109
- - mga_halimbawa/maliban_na.bato
110
- - mga_halimbawa/modyul.bato
111
- - mga_halimbawa/nakatukoy.bato
112
- - mga_halimbawa/ngunit_kapag.bato
113
- - mga_halimbawa/o_ang.bato
114
- - mga_halimbawa/pamamaraan-sa-pagkakamali.bato
115
- - mga_halimbawa/pangalan.bato
116
- - mga_halimbawa/panguri.bato
117
- - mga_halimbawa/panuntunan.bato
118
- - mga_halimbawa/para_sa.bato
119
- - mga_halimbawa/pibonasyi.bato
120
- - mga_halimbawa/siguraduhin.bato
121
- - mga_halimbawa/tanggalin.bato
122
- - mga_halimbawa/timebomb.bato
102
+ - mga_halimbawa/agapan.bt
103
+ - mga_halimbawa/alyas.bt
104
+ - mga_halimbawa/batotris.bt
105
+ - mga_halimbawa/bilang.bt
106
+ - mga_halimbawa/dapat.bt
107
+ - mga_halimbawa/habang.bt
108
+ - mga_halimbawa/ihinto.bt
109
+ - mga_halimbawa/kontrol-sa-pagiikot.bt
110
+ - mga_halimbawa/kumusta_mundo.bt
111
+ - mga_halimbawa/magbibigay.bt
112
+ - mga_halimbawa/maliban_na.bt
113
+ - mga_halimbawa/modyul.bt
114
+ - mga_halimbawa/nakatukoy.bt
115
+ - mga_halimbawa/ngunit_kapag.bt
116
+ - mga_halimbawa/o_ang.bt
117
+ - mga_halimbawa/pamamaraan-sa-pagkakamali.bt
118
+ - mga_halimbawa/pangalan.bt
119
+ - mga_halimbawa/panguri.bt
120
+ - mga_halimbawa/panuntunan.bt
121
+ - mga_halimbawa/para_sa.bt
122
+ - mga_halimbawa/pibonasyi.bt
123
+ - mga_halimbawa/siguraduhin.bt
124
+ - mga_halimbawa/tanggalin.bt
125
+ - mga_halimbawa/timebomb.bt
123
126
  - spec/bato/tagatala_spec.rb
124
127
  - spec/spec_helper.rb
125
128
  homepage: https://github.com/jjuliano/bato
126
129
  licenses:
127
130
  - MIT
128
131
  metadata: {}
129
- post_install_message:
132
+ post_install_message:
130
133
  rdoc_options: []
131
134
  require_paths:
132
135
  - lib
@@ -141,9 +144,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
141
144
  - !ruby/object:Gem::Version
142
145
  version: '0'
143
146
  requirements: []
144
- rubyforge_project:
145
- rubygems_version: 2.7.3
146
- signing_key:
147
+ rubygems_version: 3.2.15
148
+ signing_key:
147
149
  specification_version: 4
148
150
  summary: Ang Bato ay isang programming language sa wikang Filipino
149
151
  test_files:
@@ -1,5 +0,0 @@
1
- simulan
2
- 1 / 0
3
- agapan
4
- iprint "Hindi ito posible!"
5
- wakas
@@ -1,8 +0,0 @@
1
- nakamit = mali
2
-
3
- habang nakamit == mali
4
- iprint 'hindi pa nakakamit!'
5
- hinto
6
- wakas
7
-
8
- iprint 'nakamit na!'
@@ -1,5 +0,0 @@
1
- kapag 1 > 0
2
- iprint "Kumusta mundo!"
3
- kung_hindi
4
- iprint "Mayroong sira"
5
- wakas
@@ -1,3 +0,0 @@
1
- kapag (totoo o mali)
2
- iprint 'totoo'
3
- wakas
@@ -1,13 +0,0 @@
1
- bilang Pangalan
2
- panguri :pangalan
3
-
4
- ang initialize(pangalan)
5
- @pangalan = pangalan
6
- wakas
7
-
8
- ang ipakitaAngPangalan
9
- iprint sariling.pangalan
10
- wakas
11
- wakas
12
-
13
- Pangalan.gumawa('Joel').ipakitaAngPangalan