Wednesday, January 20, 2016

විෂුවල් බේසික් (Visual Basic .net) පාඩම : ශාකීය දත්ත ආකෘතිය (binary tree).

  
 විෂුවල් බේසික් පිළිබඳ ලිපි පලකරන ලෙස ලද ඉල්ලීමකට ප්‍රතිචාරයක් ලෙස මෙය පලකිරීමට තීරණය කලෙමි.
   (මම විෂුවල් බේසික් ගැන විධිමත් ලෙස හැදෑරීමක් කර නැති නිසා මෙම ලිපියේ ඇති සමහර කරුණු සහ වචන වල දෝශ තිබිය හැකි බව සලකන්න. එසේම මෙම ලිපිය මුල සිට සරලව ඉගැන්වෙන්නක් නොවන බවත් යමු මූලික දැනුමක් අවශ්‍ය බවත් සලකන්න. මුල සිට සරලව කරන්නට ගියහොත් කිසිවක් කරගැනීමට නොලැබෙන බව අත්දැක ඇත.)
    උදාහරණ සකසා ඇත්තේ vishual studio 2015 යොදා ගෙනය. ඔබ පාවිච්චි කරනුයේ වෙනත් සංස්කරණයක් නම් කේත කොටස් notepad වැනි මෘදුකාංගයකින් විවෘත කර copy paste කිරීමට සිදුවිය හැක.
***************************************
   ලිපියේ මාතෘකාවට එලැඹීමට පෙර පරිගනක බාශාවල ඇති class නම් සංකල්පය ගැන හැඳින්වීමක් කල යුතුයැයි සිතමි.
class නමින් හඳුන්වන්නේ මෘදුකාංග කොටසක් ලෙස සැලකිය හැක. සංකීර්ණ මෘදුකාංගයක් ලියන විට එහි කේත class කිහිපයකට බෙදා ලිවීම මඟින් කේතනය වඩා පහසු වන අතර මෘදුකාංග සංවර්ධනය ශිල්පීන් කිහිප දෙනෙක් යොදාගෙන කරනවිට එක් එක් ක්ලාස් එකක් සංවර්ධනය එක් එක් ශිල්පියාට පැවරිය හැක. මේ ක්ලාස් වලින් ගතහැකි එක් ප්‍රයෝජනයකි. ඊට අමතරව තවත් ප්‍රයෝජනද තිබේ (මේ පාඩමේ අරමුන එවන් වෙනත් ප්‍රයොජනයක් ගැන සඳහන් කිරීමයි.)
විෂුවල් බේසික් වලින් ක්ලාස් තැනීමේදී
 Class "ක්ලාස් එකේ නම"
End Class
ආකාරයට සටහන් කර එම ක්ලාස් එකට අයත් අනෙක් කේත කොටස් එම පේලි අතර සටහන් කල යුතුය.
   සාමාන්‍යයෙන් ක්ලාස් යොදා ගැනීමේදී ක්ලාස් එකකින් ඔබ්ජෙක්ට් යනුවෙන් දෙයක් තනා ගනියි. මෙය උපමාවකින් දක්වන්නේ නම් ක්ලාස් එකක් ජනාධිපති ධූරයටත්, ඔබ්ජෙක්ට් එකක් ජනාධිපති වරයාටත් සමකල හැක.
විෂුවල් බේසික් වලින් ඔබ්ජෙක්ට් එකක් තැනීමේදී මෙසේ සඳහන් කරයි.
  Dim "ඔබ්ජෙක්ට් එකේ නම" As New "ක්ලාස් එකේ නම"
New වදන නොමැතිව
 Dim "ඔබ්ජෙක්ට් එකේ නම" As "ක්ලාස් එකේ නම"
 ලෙස සටහන් කලහොත් ලැබෙනුයේ ඔබ්ජෙක්ට් එකක් සෑදීම සඳහා ඉඩක් වැන්නකි. එය උත්සවයක ජනාධිපති සඳහා වෙන්කල පුටුව වැන්නකි.
 Dim "ඔබ්ජෙක්ට් එකේ නම" As "ක්ලාස් එකේ නම"
"ඔබ්ජෙක්ට් එකේ නම" = new "ක්ලාස් එකේ නම"
ලෙස සඳහන් කලහොත් එය මුලින් පුටුව වෙන්කර පසුව එහි ජනාධිපති වාඩිකරවීමට සමකල හැක. (මෙහිදී පොයින්ටර් නම් සංකල්පයක්ද පාවිච්චි වුවත් එය විස්තර කිරීමට ගියහොත් ලිපිය මාතෘකාවෙන් පිට යනු ඇත.)
ජනාධිපතිට වෙන්කල පුටුව තුල ජනාධිපති ධූරය දරන ඕනෑම අයෙක් වාඩි කරවිය හැක. ඒ ආකාරයටම ඕනෑම ඔබ්ජෙක්ට් එකක් ඔබ්ජෙක්ට් ඉඩ තුල  තැම්පත් කල හැක. එනම්
Dim "ඔබ්ජෙක්ට් එකේ නමA" As New "ක්ලාස් එකේ නම"
Dim "ඔබ්ජෙක්ට් එකේ නමB" As New "ක්ලාස් එකේ නම"
Dim "ඔබ්ජෙක්ට් එකේ නමC" As New "ක්ලාස් එකේ නම"
Dim "ඔබ්ජෙක්ට් එකේ ඉඩ" As "ක්ලාස් එකේ නම"
"ඔබ්ජෙක්ට් එකේ ඉඩ" ="ඔබ්ජෙක්ට් එකේ නමA"
"ඔබ්ජෙක්ට් එකේ ඉඩ" ="ඔබ්ජෙක්ට් එකේ නමB"
"ඔබ්ජෙක්ට් එකේ ඉඩ" ="ඔබ්ජෙක්ට් එකේ නමC"
ඉහත අවසන් පේලි තුන සලකන්න. එයින් මුල් පේලියේදී "ඔබ්ජෙක්ට් එකේ ඉඩ" කරන වෙනස් කම් "ඔබ්ජෙක්ට් එකේ නමA" බලපායි. ඒ ආකාරයටම අනෙක් අවස්ථාවල අනෙක් ඔබ්ජෙක්ට දෙකට බලපායි.
Class "ක්ලාස් එකේ නම"
 Sub New()
 End Sub
End Class
ලෙස කේතනය කලහොත් නව ඔබ්ජෙක්ටුවක් සෑදෙන විට
Sub New()
 End Sub
අතර කේත කොටස ක්‍රියාත්මක වේ.
Sub New()
 End Sub
Sub New(ByRef a As branch, l As branch_)
End Sub
ලෙස New ක්‍රියාවලි කිහිපයක් ලිවිය හැක. එවිට ක්‍රම කිහිපයකින් ඔබ්ජෙක්ට් සෑදීම කල හැක.
***************************************
   පරිගනක මතකය තුල දත්ත විශාල ප්‍රමාණයක් තැන්පත් කිරීම සඳහා සාමාන්‍යයෙන් array, queue, stack, list යන දත්ත ආකෘති පාවිච්චි කරයි. (නම වෙනස් වුවත් මේවායේ මහා ලොකු වෙනසක් නැත) නමුත් මෙහිදී දත්ත එකිනෙක අතර සම්බන්ධයක් ඇති නොවේ. විභාගයකට සහභාගිවූ සිසුන් ලක්ෂයකගෙන් වැඩිම ලකුනු ගත් සිසුවා තේරීම වැනි ගැටලුවක් විසඳීමේදී ඒ සඳහා ඉහත ආකාරයේ දත්ත අකෘතියක් යොදාගෙන සිසුන්ගේ දත්ත තැම්පත් කලවිට ලැයිස්තුව මුලසිට අගටම කියවා අවශ්‍ය දත්තය සෙවීමට සිදුවේ.
   ශාකීය දත්ත ආකෘතිය මෙවැනි ගැටලු සඳහා පහසුවෙන් යොදාගත හැකි විකල්පයකි.
   ශාකීය දත්ත ආකෘතිය උදාහරණයක් මඟින් මෙසේ පැහැදිලි කල හැක.
   ආයතනයක "සේවකයෙක්ට" ඔහු යටතේ සේවකයන් දෙදෙනෙක් (ඔවුන් A,B ලෙස ගනිමු) තබාගත හැකියැයි සිතමු. A සහ B යනු "සේවකයන්ම" බැවින් ඔවුන්ටද එකිනෙකාට "සේවකයන්" දෙදෙනා  බැගින් තබාගත හැක මෙසේ දිගටම කිරීමේදී ගොඩනැගෙන පිරමිඩාකාර ව්‍යුහය ශාකීය දත්ත ආකෘතියකට උපමාකල හැක.
   විශුවල් බේසික් වලින් ශාකීය දත්ත ආකෘතියක් තැනීමේදී class සංකල්පය යොදා ගත යුතුය.
   ඉහත උදාහරණයේදී ‍දැක්වූ ව්‍යුහයේ මූලික ඒකකය









ලෙස දැක්විය හැක. මෙම ඒකකයක් node ලෙස හඳුන්වයි. ඉහත එකකය පහත දැක්වෙන පරිදි ක්ලාස් එකකින් නිරූපනය කල හැක.
Class සේවකයා
 Dim A As new සේවකයා
Dim B As new සේවකයා
End Class
විභාගයකට සහභාගිවූ සිසුන් ලක්ෂයකගෙන් වැඩිම ලකුනු ගත් සිසුවා තේරීම වැනි ගැටලුව සැලකීමේදී ඒ සඳහා ශාකීය ආකෘතියක් යොදා ගැනීමේදී මූලික ඒකකය මෙලෙස සැකසිය හැක.
Class සිසුවා
 Dim සිසුවාගේ_නම As  string
 Dim සිසුවාගේ_ලකුණු As  integer

Dim වැඩි As  සිසුවා
Dim අඩු As  සිසුවා
End Class
මුල් සිසුවාගේ තොරතුරු ඇතුළත් කිරීමේදී ඔහුගේ නම සිසුවාගේ_නම  තුලත් ලකුණු සිසුවාගේ_ලකුණු තුලත් ඇතුළු කලහැකි ලෙස සැකසිය යුතුය.
නව සිසුවෙකුගේ ලකුණු ඇතුලත් කරන විට ඔහුගේ ලකුණු මුල් සිසුවාගේ ලකුණු වලට වඩා වැඩිනම් වැඩි තුලත්, අඩුනම් අඩු තුලත් නව සිසුවාගේ දත්ත ඇතුළු කල යුතුය. ඒ සඳහා පහත පරිදි ‍කේතනය කල යුතුය.
Public Class Form1
    Dim a As සිසුවා
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        a = New සිසුවා("", 0)

    End Sub

    Dim b As සිසුවා
    Friend Sub brancing(name As String, mark As Integer)
        b = a
     
        If b.සිසුවාගේ_ලකුණු < mark Then
            b.වැඩි = New සිසුවා(name, mark)
        Else
            b.අඩු = New සිසුවා(name, mark)
        End If
    End Sub

End Class
Class සිසුවා
    Friend is_end As Boolean = False
    Sub New(name As String, mark As Integer)
සිසුවාගේ_නම =name
    සිසුවාගේ_ලකුණු =mark
    End Sub


    Friend සිසුවාගේ_නම As String
    Friend සිසුවාගේ_ලකුණු As Integer

    Friend වැඩි As සිසුවා
    Friend අඩු As සිසුවා

End Class
මෙම ක්‍රියාවලිය ස්වයංක්‍රීයව කරවීමට පහත පරිදි කේත ලිවිය යුතුය.
Public Class Form1

    Dim a As සිසුවා
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

        a = New සිසුවා("", 0)
    End Sub
   Dim b As සිසුවා
     Sub add_data(name As String, mark As Integer)
        b = a

        search(mark)
        brancing(name, mark)
    End Sub

    Friend Sub brancing(name As String, mark As Integer)

        If b.සිසුවාගේ_ලකුණු < mark Then
            b.වැඩි = New සිසුවා(name, mark)
        Else
            b.අඩු = New සිසුවා(name, mark)
        End If
    End Sub

    Sub search(mark As Integer)
        Dim c As සිසුවා = b
        Do
            If c Is Nothing Then
                Exit Sub
            End If
            b = c
            If b.සිසුවාගේ_ලකුණු < mark Then
                c = b.වැඩි
            Else
                c = b.අඩු
            End If
        Loop
    End Sub
End Class
Class සිසුවා

    Sub New(name As String, mark As Integer)
        සිසුවාගේ_නම = name
        සිසුවාගේ_ලකුණු = mark
    End Sub


    Friend සිසුවාගේ_නම As String
    Friend සිසුවාගේ_ලකුණු As Integer

    Friend වැඩි As සිසුවා
    Friend අඩු As සිසුවා

End Class
මෙහි සම්පූර්ණ කේතය මෙතනින් ලබා ගන්න. මෙවැනි කේතනයකදී කරන කාර්යය ගැන සිතා දත්ත ආකෘතිය සකසා එය හැසිරවීමට අවශ්‍ය ක්‍රියාවලි සුදුසු පරිදි ලිවිය යුතුය.
**************************
ශාකීය දත්ත ආකෘතියයක් යොදාගෙන කලහැකි සුන්දර කටයුත්තක් නම් ෆ්‍රැක්ටල් (factal) මෝස්තර සෑදීමයි. ෆ්‍රැක්ටල් මෝස්තර සෑදීමේදී ඒ සඳහා යොදාගත හැකි සරලම ක්‍රමය වන්නේ ශාකීය දත්ත ආකෘතියක් හරහා එය කරගැනීම විය යුතුය.
උදාහරණ 1:
මෙහිදී  මූලික ඒකකය ලෙස යොදා ගන්නා ක්ලාස් එක ලෙස branch ක්ලාස් එක සාදා ඇත. එය තුල ෆ්‍රැක්ටල් මෝස්තරය සඳහා යොදා ගන්නා හැඩ තලයේ (මෙහිදී එය රේඛා ඛණ්ඩයකි) ආරම්භක ලක්ෂයේ ඛණ්ඩාංකය, දිග, ඝනකම, සහ කෝණය ඇතුලත්කර ඇත. එයට අමතරව    Friend l_b, r_b, m_b As branch ලෙස ශාකා ක්ලාස් 3ක් සඳහා ඉඩ ඇතුලත්කර ඇත.
draw() ක්‍රියාවලිය මඟින් හැඩ තලය ඇඳිම සිදු කරයි. මෙහිදී විෂුවල් බේසික් වල ග්‍රැෆික් ක්‍රියාවලි ගැන යම් අවබෝධයක් තිබිය යුතුය. නමුත් මෙහිදී අඳින්නේ රේඛා ඛණ්ඩයක් නිසා එම කේතය පහසුවෙන් අවබෝධ කරගත හැකියැයි සිතමි.
brancing() ක්‍රියාවලිය මඟින් ඔබ්ජෙක්ටුවේ ශාකා තුන නිර්මාණය කෙරෙයි.
සාමාන්‍යයෙන් ගණිතයේදී පාවිච්චි කෙරෙන්නේ මෙවන් ඛණ්ඩාංක තලයක් වුවත්,

විෂුවල් බේසික් වල ග්‍රැෆික් කටයුතු වලදී පාවිච්චි කරන්නේ මෙවැනි ඛණ්ඩාංක ක්‍රමයකි.

 එමනිසා මෙහිදී අක්ෂ පරිවර්තනයක් කල යුතුය.
මුලින්ම මුල් ඔබ්ජෙක්ටුව සාදා එයට අවශ්‍ය දත්ත ඇතුළු කරයි. ඉන්පසු එහි ඇති draw() සිදුකර brancing() ක්‍රියාවලිය ආරම්භ කරයි.
නව ඔබ්ජෙක්ටුවක් සෑදෙන හැම විටම එම ඔබ්ජෙක්ටු‍ව මව් ඔබ්ජෙක්ටුවේ වම, දකුණ හෝ මැද ශාකා වලින් කුමක්ද යන කරුණ මත නව ඔබ්ජෙක්ටුවේ රේඛා ඛණ්ඩයේ කෝණය වෙනස් කිරීමත්, එහි දිග අඩු කිරීමත් සිදු කරයි. ඉන්පසු draw() සිදුකර brancing() ක්‍රියාවලිය ආරම්භ කරයි. මෙය level විචල්‍යය තුල දක්වා ඇති වාර ගණන නැවත නැවත කෙරෙයි. මෙමඟන් ගසක හැඩය ඇති ෆ්‍රැක්ටල් මෝස්තරයක් සෑදේ.
උදාහරණ 2:
මෙය කලින් උදාහරණයට බොහෝ සමාන කේතයකි. එකම ප්‍රධාන වෙනස ක්‍රියා වලිය සිදුවන්නේ ශාකීය දත්ත ආකෘතියේ අග්‍රය නියෝජනය කරන ඔබ්ජෙක්ටුව සෑදෙන විට පමණක් වීමයි. මෙහි branch ක්ලාස් එක වෙනුවට branch1, branch2 පාවිච්චි කිරීමෙන් වෙනස් මෝස්තර සෑදිය හැක.

Monday, January 11, 2016

තයි පොන්ගල්, මකර සංක්‍රාන්තිය, දුරුතු මංගල්‍යය.

      ජනවාරි 14 හෝ 15 දිනවල ලංකාවේ හින්දු (තමිල්නාඩු අභිචාර විධි අනුගමනය කරන්නන්) දෙමළු තෛ පොංගල් උත්සවය සමරති.

     මෙය හින්දු උත්සවයක් ලෙස හඳුන්වන අවස්ථා ඇත. එය කොතරම් නිවැරදිදැයි සැකයත් ඇත. සිංහල අවුරුද්ද සිංහල/දෙමල ක්‍රිස්තියානින් සාමාන්‍යයෙන් සමරන්නේ නැත. නමුත් එය බෞද්ධ/හින්දු උත්සවයක් ලෙස සැලකිය හැකිද?

 https://en.wikipedia.org/wiki/Thai_Pongal

 https://en.wikipedia.org/wiki/Makar_Sankranti

    තෛ පොන්ගල් උත්සවය ඉන්දියාවේ වැඩි දෙනා හඳුන්වන්නේ මකර සංක්‍රාන්තිය ලෙසයි. එනම් සූර්යයා ධනු රාශියේ සිට මකර රාශියට පැමිණීම මෙදිනට සිදුවෙයි. දුරුතු (දෙමලෙන් தை) මාසයේ ආරම්භක දිනය මෙදිනයි. දුරුතු යනු ජනවාරි 14 සිට පෙබරවාරි 14 දක්වා කාලයයි.

    එම නිසා සිංහලෙන් මෙම උත්සවය තයි පොන්ගල් වෙනුවට දුරුතු මංගල්‍යය යනුවෙන් හැඳින්වීම සුදුසු නොවේද?

Saturday, January 9, 2016

කෝපි කඩේ (බේරුනා).


https://en.wikipedia.org/wiki/Kopi_Kade

 

    කෝපි කඩේ ටෙලිනාට්‍යයේ 1500 කථාංගය හෙටදින විකාශනය වනු ඇත. කෝපි කඩේ ආරම්භ වන වකානුවේ අප නිවසට ස්වාධීන රූපවාහිනී සංඥානිසි පරිදි නොලැබුණු අතර එමනිසා එම නාලිකාව නැරඹිය නොහැකි විය. මුලින්ම කෝපි කඩේ චරිතයක් දුටුවේ ජාතික රූපවාහිනියේ ලොතරැයි දිනුම් ඇදීමේ වැඩසටහනකදීය. එහිදී ආරාධිතයන් ලෙස එන්සිනා සහ තවත් අයෙක් පැමිණියහ.

    පසුව ක්‍රමයෙන් සංඥා හොඳින් ලැබෙන්නට පටන්ගත් බැවින්  ස්වාධීන රූපවාහිනිය නැරඹීමට හැකියාව ලැබුනි. එකල අපගේ ජනප්‍රියම වැඩසටහන වූයේ කෝපි කඩේ ටෙලිනාට්‍යයි. මෙය මගේ පමණක් නොව රටේම තත්වය බවට සැකයක් නැත.

පසුකලෙකදී මෙහි ජනප්‍රියත්වය අඩුවිය.

1. මෙගා ටෙලි නාට්‍යය ජනප්‍රිය වීම.

2. ටෙලිනාට්‍ය කොටස් දිනපතා විකාශණය කිරීමේ සම්ප්‍රදාය නිසා සතියකට වරක් විකාශණය වන ටෙලිනාට්‍ය අමතක වීම.

3. රූපවාහිනී නාලිකාගණන වැඩිවීම.

4. බොහොමයක් නාලිකා වල ඉරිදා ප්‍රවෘත්ති විකාශයවන වෙලාව කෝපි කඩේ සඳහා යොදා ගැනීම. මෙහි ජනප්‍රියත්වය අඩුවීමට බලපෑ බාහිර හේතු වන අතර. වැඩසටහන් කථා පිටපත් වල දුර්වලතාවද කෝපි කඩේට අවාසිදායක ලෙස බලපෑවේය.

    කෙසේ වුවත්  කෝපි කඩේට විශාල රසික පිරිසක් ඇතිකරගැනීමේ හැකියාවක් තවමත් ඇත.

    මගේ ලිපියේ මාතෘකාවේ අරමුණ කෝපි කඩේ ටෙලිනාට්‍යය විනාශ වීමට හේතුවිය හැකිව තිබූ මාර්ග කිහිපයක් පෙන්වා දීමයි.කෝපිකඩේ ටෙලිනාට්‍යය විකාශය වන්නේ ආණ්ඩුවේ රූපවාහිනී නාලිකාවක වීම නිසා මෙම මාර්ගවලට වැටීමේ අවධානමක් තිබුනි. එම මාර්ගවල නොයෑම, කෝපි කඩේ මෙතෙක් දුර යෑමට හේතුවූ බව මම විශ්වාස කරමි.

එම මාර්ග නම්;

1. ආණ්ඩුවේ හොරණෑවක් වීම.

    ආණ්ඩුවේ සංවර්ධන කටයුතු හා ප්‍රතිපත්ති වර්ණනා කිරීමට කෝපි කඩේ යොදා ගත්තේ නම් කෝපි කඩේ ඉක්මනින්ම ජනතාව අතින් ප්‍රතික්ෂේප වන්නට තිබුනි. එවැනි කටයුතු හැකිතාක් අවම කර ගැනීමටත් කථා තේමාවට සම්බන්ධ කරගැනීමෙන් වැලකීමටත් කෝපිකඩේ පිරිස සමත් වූහ.

2. හේතුවාදී වීම.

    කෝපිකඩේ ටෙලිනාට්‍යයෙහි ගමේ ගෝත්‍රික නායකයා ලෙස නිරූපනය වන්නේ "කුරුං ගොයියා" ය. ඔහු මන්තර ගුරුකම් කරන්නෙක් ලෙසද කටයුතු කරයි. යම් හේතුවක් නිසා කෝපි කඩේ ටෙලිනාට්‍යය මිත්‍යා විශ්වාස ප්‍රචාරය නොකල යුතුයැයි "ඉහලින් අනක්" ලැබුනි නම් කුරුං ගොයියා දුෂ්ඨ චරිතයක් වනු ඇත. ගමේ දිස්පැන්සරියේ දොස්තර මහතා  හෝ පවුල් සෞඛ්‍ය සේවිකාව (වර්තමාන කෝපි කඩේ තුල එම චරිත නැත) කුරුං ගොයියාගේ තැන ගනු ඇත. වැඩසටහන අවසානයේ (පුෂ්පා රම්‍යානිද සොයිසාගේ දේශණයක් වැනි)සෞඛ්‍ය පාඩමක් යනු ඇත(කුරුං ගොයියාගේ "ඕං කිව්වා" වෙනුවට). ප්‍රේක්‍ෂකයන්ට කෝපි කඩේ තිත්තවනු ඇත. (සිරස නාලිකාවේ විකාශය වූ (ඉන්දියානු අනුකාරක) ටෙලිනාට්‍යය තුල මෙම තත්වය වැනි දෙයක් දුටුවෙමි.

3. ස්ත්‍රිවාදී වීම.

    ඉහත විස්තරයේ තත්වයට සමාන තත්වයක් මෙවිටද ඇතිවනු ඇත.

4. බහු වාර්ගික වීම.

    කෝපි කඩේ ටෙලිනාට්‍යයේ ජනප්‍රියත්වයට හේතුවූ මූලික කරණ ලෙස මම දකින්නේ මෙය "සිංහල බෞද්ධ" ටෙලිනාට්‍යයක් වීමයි.

දෙමළ ජනතාව අතර කෝපි කඩේට ඇති ජනප්‍රියබව ගැන අදහසක් නැකි වුවත්. මා පාසල් යන  කාලයේ දී මගේ මුස්ලිම් මිතුරන් අතර එය ජනප්‍රිය බව නිරීක්ෂණය කර ඇත්තෙමි.

දෙමළ සහ මුස්ලිම් චරිත ඉඳහිට කෝපි කඩේට එක් කලත් එහි සිංහල බෞද්ධ අනන්‍යතාවට හානි නොවීම අගය කල යුතුයි. කෝපි කඩෙන් ජාතික සමඟිය ගැන "පනිවිඩ" ලබා දීමට උත්සාහ ගත්තේ නම් ලැබෙනුයේ මෙවන් ටෙලිනාට්‍යයකි.

    දුරුතු මංගල්‍ය (තෛ පොන්ගල්) දිනට ආසන්න දිනකදී සොමිනෝනා නළලේ තිලකයක් තබා ගෙන කෝපි කඩේ කිරි ඉතිරවනු ඇත. අබිලින් තම එළදෙනුන් සරසවා උන්ට වඳිනු ඇත.

    රමලාන් දින අබිලිං ගවයෙක් මරා මස් උයා අසල් වැසියන්ට බෙදා දෙනු ඇත.

    නත්තල් දින කෝපි කඩේ ගවලෙනක් සාදනු ඇත. ඩිංගි මහත්තයා නත්තල් සීයාට ඇඳ තෑගි බෙදා දෙනු ඇත.

    අවසානයේ තැනෙන්නේ කෝපි කඩයක් නොව "කන්නගි පුරය" කි. ඉන්පසු කෝපි කඩේ කණ්ඩායමටකෝපි කඩේ පවත්වා ගැනීමට  NGOවක අනුග්‍රහය අවශ්‍ය වනු ඇත.

කෝපි කඩේ බහුවාර්ගික විගඩගමක් නොවීම මෙහි ජනප්‍රියත්වයට හේතුවිය.

    ජාතික සමඟිය ගැන "පනිවිඩ" ලබා දෙන කෝපි කඩේ කථාංග කිහිපයක් දැක ඇත්තෙමි.මෙය කෝපි කඩේට හානියකි. මෙය ප්‍රේක්ෂකයා මෝඩයෙකු ලෙස සැලකීමක් බව මගේ මතයයි.

    කෝපි කඩේට දෙමළ/ මුස්ලිම් චරිත එක් කිරීමට අවශ්‍ය නම් එම චරිත "සැම විටම සුදු" චරිත ලෙස නොදක්වා සිංහල චරිත මෙන්ම සාමාන්‍ය (එනම් හොඳ නරක දෙකම ඇති) චරිත ලෙස දැක්වීමට කටයුතු කල යුතුය (මුවන්පැලැස්සේ කදිරා වැනි). එසේ කිරීමට බැරිනම් (හෝ බය නම්) සිංහල  චරිත පමණක් යෙදීම සුදුසුය.

    අදවනවිට පවතින තත්වය අනුව අපකුඩා කල කෝපි කඩේ ලද ජනප්‍රියත්වයට නැවත එයට ලඟාවීමඅපහසු වුවත් අන් ටෙලිනාට්‍ය සමඟ තරඟයට නොගොස් කෝපි කඩේටම ආවේනික ශෛලියක් අනුගමනය කර කෝපි කඩේටම ආවේනික රසික පිරිසක් ගොඩනඟා ගත හැක.

    මෙවන් වැරදි මාර්ගවල නොගොස් කෝපිකඩේටම ආවේනික රසයක් ඇති කථාංග නිර්මාණය කරමින් දිගු ගමනක් යනු ඇතැයි බලාපොරොත්තු වෙමි.

කෝපි කඩේට සුබපැතුම්!

Sunday, January 3, 2016

මඩු වලිගය.

    මෛත්‍රීපාල ජනාධිපති වරයාගේ මඩු වලිග කතාව මේ වනවිට ජනප්‍රිය මාතෘකාවක් වී ඇත. එම කතාව හෝ එම කතාවට හේතු වූ සිදුවීම විවේචනය කිරීමට බලාපොරොත්තු නොවෙමි. මගේ අදහස මෙම සිදුවීම සංගීත සංදර්ශණයේ සංවිධායකයන්ගේම කටයුත්තක් බවයි. තනපටය ගැලවීම, සංදර්ශණය අතරතුර සිදුවුනි නම් මේ වනවිට එම ඇඳුම් ගලවන අවස්ථාවේ ඡායාරූපයක් ප්‍රසිද්ධ නොවීමට හේතුවක් නැත.

    මෙම කතාව විදෙස් ජනමාධ්‍යවල පලවීමේදී අර්තය විකෘති වී ඇති බව පෙනීයයි. මෙය සිතා මතා කල විකෘතියක්දැයි නොදනිමි."මුංට මඩුවලිගෙන් තැලිය යුතුයි" යන්න Who should be whipped with toxic stingray tails යනුවෙන් පරිවර්තනය කිරීම නිවැරදිද?

    ජනාධිපතිවරයා සිංහලෙන් කල මඩු වලිග කතාව ඉංග්‍රීසියට පෙරලා විදේශ මාධ්‍යවල පලකිරීමේදී පදගතාර්ත (word to word) පරිවර්ථනයක් සිදුවී ඇතිබව පෙනීයයි.
  කතාකරන  සිංහල  බාශාවෙන් "මුංට මඩුවලිගෙන් තලන්න ඕනෑ" යනුවෙන් සඳහන් කරන්නේ යම් ක්‍රියාවක් කෙරෙහි අපහාසයෙන්, උපහාසයෙන් හා හාස්‍යයෙන් යුතු විරෝධයක් පලකිරීමටය. එසේ නැතිව ඇත්තටම මඩුවලිගයකින් තැලීමට බලාපොරොත්තු වන බවක් එයින් අදහස් නොවේ. මෙයට තරමක් සමාන අවස්ථාවක් "නයිට් රයිඩර්" ටෙලිනාට්‍යයේ අවසානයේ පලවූ විස්තර කථනය තුල දිටිමි. එනම් එහි මයිකල් නයිට් කෘසේඩර් කෙනෙක් ලෙස හඳුන්වා දුනි. එහිදී කෘසේඩර් යන වචනය යොදා ඇත්තේ "අයුක්තිය අසාධාරණයට එරෙහිව සටන් කරන්නා" යන අරුතිනි.
    රාජ්‍ය නායකයෙකුගේ ප්‍රකාශයක් වෙනත් බසකට පරිවර්තනය කර පලකිරීමේදී මීට වඩා සැලකිලිමත් විය යුතුය. විශේෂයෙන් ISIS සංවිධානය හිසගසා දැමීම් කර එය ප්‍රසිද්ධ කරන මෙක, මෙම මඩුවලිග කතාව වරදවා වටහාගැනීමට ඉඩ ඇත. මෙම පරිවර්තනය කල පුද්ගලයන් මෙසේ වැරදි අරුතක් මතුවන සේ එය පරිවර්තනය කලේ සිතාමතාමද? නැතිනම් නොදැනුවත්කමින්දැයි නොදනිමි.
    සිංහල බාශාවේ ඇති කියමන්වල අරුත් ගැන විදේශිකයෙකුට දැනගැනීමට හැකිවන ලෙස වෙබ් අඩවියක් තනන්නේ නම් අගනේය. මම කලකට පෙර පිටකොටුව  ගුනසේන පොත් හලෙහිදී සිංහල ඉගෙන ගැනීමට පොතක් සොයන යුරෝපීය ජාතිකයෙක් දැක්කෙමි.