Popular Post

Posted by : Om Bram Kamis, 27 Oktober 2016

BAHASA PEMROGRAMAN

Apa sih yang dimaksud dengan bahasa pemrograman???

Bahasa Pemrograman, atau sering kita istilahkan  dengan baha komputer, instruksi standar untuk memerintah koputer. Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaks dan semantik yang dipakai untuk mendefinisikan program komputer. Bahasa ini eemungkinkan seorang programer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi.




Fungsi bahasa pemrograman.


Bahasa Pemrograman yang kita kenal ada banyak sekali di belahan dunia, tentang ilmu komputer dan teknologi dewasa ini. Perkembangannya mengikuti tingginya inovasi yang dilakukan dalam dunia teknologi. Contoh bahasa pemrograman yang kita kenal antara lain adalah untuk membuat aplikasi game, antivirus, web, dan teknologi lainnya.
Fungsi bahasa pemrograman yaitu memerintah komputer untuk mengolah data sesuai dengan alur berpikir yang kita inginkan. Keluaran dari bahasa pemrograman tersebut berupa program/aplikasi. Contohnya adalah program yang digunakan oleh kasir di mal-mal atau swalayan, penggunaan lampu lalu lintas di jalan raya, dll.


Tingkatan bahasa pemrograman

  1. Bahasa Pemrograman Tingkat Tinggi.
Merupakan bahasa tingkat tinggi yang mempunyai ciri ciri mudah mudah dimengerti karena kedekatanya terhadap bahasa sehari-hari. Sebuah pernyataan program diterjemahkan pada senuah atatu beberapa mesin dengan menggunakan compiler.
Sebagai contoh adalah :
BASIC, C, C++, COBOL, FORTRANT, ada Pascal, Java, NET

  1. Bahasa Tingkat Menengah.
Disebut tingkat menengah karena bisa masuk kedalam bahasa tingkat tinggi maupun tingkat rendah.
Sebagai contoh adalah : bahsa C
  1. Bahasa Tingkat Rendah
Bahasa tingkat rendah merupakan bahasa pemrograman yang berorientasi pada pada mesin.  Disebut tingkat rendah karena bahasa ini lebih dekat kebahasa mesin dari pada bahasa manusia, yang tergolong bahasa tingkat rendah adalah bahasa assembly.
Kelemahan bahasa tingkat rendah adalah:
Ø  Sulit dipelajar karena programmer harus mengetahui seluk beluk perangkat keras yang digunakan.
Ø  Bahasa assembly untuk jenis mikroprosesor satu dengan yang lain jauh berbeda karena belum ada standarisasi. Contoh : bahasa assembly untuk mikroprosesor intel 8088.

Macam macam Bahasa Pemrograman dan definisinya.


1.      Bahasa pemrograman C
Dibuat untuk memprogram sistem dan jaringan komputer namun bahasa ini juga sering digunakan dalam mengembangkan software aplikasi. C juga banyak dipakai oleh berbagai jenis platform sistem operasi dan arsitektur komputer, bahkan terdapat beberepa compiler yang sangat populer telah tersedia.

2. Bahasa pemograman JAVA
Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Java tidak boleh disalahpahami sebagai JavaScript. JavaScript adalah bahasa scripting yang digunakan oleh web browser.

3. Bahasa pemograman PYTHON
Python adalah bahasa pemrograman dinamis yang mendukung pemrograman berorientasi obyek. Python dapat digunakan untuk berbagai keperluan pengembangan perangkat lunak dan dapat berjalan di berbagai platform sistem operasi.

4. Bahasa pemograman RUBY
Ruby adalah bahasa skripting yang berorientasi obyek. Tujuan dari ruby adalah menggabungkan kelebihan dari semua bahasa-bahasa pemrograman scripting yang ada di dunia. Ruby ditulis dengan bahasa pemrograman C dengan kemampuan dasar sepertiPerl dan Python.

5. Bahasa pemograman SQL
SQL (Structured Query Language) adalah sebuah bahasa yang dipergunakan untuk mengakses data dalam basis data relasional. Bahasa ini secara de facto merupakan bahasa standar yang digunakan dalam manajemen basis data relasional. Saat ini hampir semua server basis data yang ada mendukung bahasa ini untuk melakukan manajemen datanya.

6. Bahasa pemograman ColdFusion
ColdFusion adalah server aplikasi dan framework pengembangan perangkat lunak yang digunakan untuk  pengembangkan perangkat lunak komputer, khususnya situs webdinamis.

7. Bahasa pemograman PHP
PHP adalah bahasa pemrograman script yang paling banyak dipakai saat ini. PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu PHP masih bernama FI (Form Interpreted), yang wujudnya berupa sekumpulan script yang digunakan untuk mengolah data form dari web.

8. Bahasa pemograman HTML
HyperText Markup Language (HTML) adalah sebuah bahasa markup yang digunakan untuk membuat sebuah halaman web dan menampilkan berbagai informasi di dalam sebuah browser Internet.

9. Bahasa pemograman COBOL
COBOL (singkatan dari Common Business Oriented Language) adalah sebuah bahasa pemrograman generasi ketiga. Sesuai dengan namanya, maka bahasa COBOL mempunyai fungsi menyelesaikan masalah-masalah yang berhubungan dengan perdagangan, seperti sistem pengelolaan keuangan, laporan pengeluaran sebuah perusahaan dan lain-lain.

10. Bahasa pemograman MICROSOFT VISUAL BASIC
Visual Basic (sering disingkat sebagai VB saja) merupakan sebuah bahasa pemrograman yang menawarkan Integrated Development Environment (IDE) visual untuk membuat program perangkat lunak berbasis sistem operasi Microsoft Windows dengan menggunakan model pemrograman (COM), Visual Basic merupakan turunan bahasa pemrograman BASIC dan menawarkan pengembangan perangkat lunak komputerberbasis grafik dengan cepat.

11. Bahasa pemograman VISUAL C++
Visual C++ adalah sebuah produk Integrated Development Environment (IDE) untukbahasa pemrograman C dan C++ yang dikembangkan Microsoft. Visual C++ merupakan salah satu bagian dari paket Microsoft Visual Studio.

12. Bahasa pemograman DELPHI
Umumnya delphi lebih banyak digunakan untuk pengembangan aplikasi desktop danenterprise berbasis database, tapi sebagai perangkat pengembangan yang bersifat general-purpose ia juga mampu dan digunakan dalam berbagai jenis proyek pengembangan software.

13. Bahasa pemograman C++
C++ merupakan bahasa pemrograman yang memiliki sifat Pemrograman berorientasi objek, Untuk menyelesaikan masalah, C++ melakukan langkah pertama dengan menjelaskan class-class yang merupakan anak class yang dibuat sebelumnya sebagai abstraksi dari object-object fisik, Class tersebut berisi keadaan object, anggota-anggotanya dan kemampuan dari objectnya, Setelah beberapa Class dibuat kemudian masalah dipecahkan dengan Class.

14 . Bahasa Pemrograman ASP
ASP adalah singkatan dari Active Server Pages yang merupakan salah satu bahasa pemograman web untuk menciptakan halaman web yang dinamis. ASP merupakan salah satu produk teknologi yang disediakan oleh Microsoft. ASP bekerja pada web server dan merupakan server side scripting.

15. Bahasa Pemrograman XML
Extensible Markup Language (XML) adalah bahasa markup serbaguna yang direkomendasikan W3C untuk mendeskripsikan berbagai macam data. XML menggunakan markup tags seperti halnya HTML namun penggunaannya tidak terbatas pada tampilan halaman web saja. XML merupakan suatu metode dalam membuat penanda/markup pada sebuah dokumen.

16. Bahasa Pemrograman WML
WML adalah kepanjangan dari Wireless Markup Language, yaitu bahasa pemrograman yang digunakan dalam aplikasi berbasis XML (eXtensible Markup Langauge). WML ini adalah bahasa pemrograman yang digunakan dalam aplikasi wireless. WML merupakan analogi dari HTML yang berjalan pada protocol nirkabel.

17. Bahasa Pemrograman PERL
Perl adalah bahasa pemrograman untuk mesin dengan sistem operasi Unix (SunOS, Linux, BSD, HP-UX), juga tersedia untuk sistem operasi seperti DOS, Windows, PowerPC, BeOS, VMS, EBCDIC, dan PocketPC. PERL merupakan bahasa pemograman yang mirip bahasa pemograman C.

18. Bahasa Pemrograman CFM
Cfm dibuat menggunakan tag ColdFusion dengan software Adobe ColdFusion / BlueDragon / Coldfusion Studio. Syntax coldfusion berbasis html.

19. Bahasa Pemrograman Javascript
Javascript adalah bahasa scripting yang handal yang berjalan pada sisi client. JavaScript merupakan sebuah bahasa scripting yang dikembangkan oleh Netscape. Untuk menjalankan script yang ditulis dengan JavaScript kita membutuhkan JavaScript-enabled browser yaitu browser yang mampu menjalankan JavaScript.

20. Bahasa Pemrograman CSS
Cascading Style Sheets (CSS) adalah suatu bahasa stylesheet yang digunakan untuk mengatur tampilan suatu dokumen yang ditulis dalam bahasa markup. Penggunaan yang paling umum dari CSS adalah untuk memformat halaman web yang ditulis dengan HTML dan XHTML. Walaupun demikian, bahasanya sendiri dapat dipergunakan untuk semua jenis dokumen XML termasuk SVG dan XUL. Spesifikasi CSS diatur oleh World Wide Web Consortium (W3C).

Bagaimana cara membuat bahasa pemrograman sendiri.

Bahasa pemrograman saat ini sudah sangat banyak nama, jenis, berikut keunggulannya. Mulai dari yang populer (seperti Java, C++, VB, PHP, keluarga .NET,  Delphi, dst.) dengan segala kelebihan, kelemahan, dan tipe source-nya (entah itu open source atau closed source).
Bila Anda programmer, adakalanya Anda membenci (atau setidaknya merasa kurang pas) dengan bahasa pemrograman yang sedang dipakai. Entah itu C++ dengan banyak istilahnya, statement yang kurang tepat,  pemakaian suatu sintaks yang tidak (atau kurang) berguna, dsb.
Pernahkah Anda berpikir untuk menghapuskan kebencian (maksudnya kelemahan) terhadap bahasa pemrograman  tersebut dengan membuat bahasa pemrograman sendiri. wah! pasti sangat sulit membuatnya! Mungkin begitu  gumam Anda. Benar, membuat bahasa pemrograman memang sulit, apalagi bila Anda single fighter (sendirian)  tentu akan sangat berat merancang bahasa impian Anda. Namun, akan terasa mudah bila Anda memiliki motivasi.  Untuk apa Anda membuat bahasa pemrograman? Hal ini akan membuat Anda merasa berharga, dan bersemangat  membuat sebuah programming language.
Merancang Syntax

Untuk dapat merancang sintaks bahasa pemrograman yang baru, beberapa poin berikut yang harus diperhatikan:
  • Pertama, Anda harus menguasai bahasa pemrograman yang Anda pakai sekarang (C++, dsb)
  • Kedua, tentukan jenis bahasa pemrograman yang Anda buat, apakah Interpreting, langsung compiling, atau, hanya berupa parser (pemeriksa sintaks), untuk kemudian di-compile atau di-interpret oleh tool lain.
  • Tentukan bahasa pemrograman yang dipakai untuk membuat tool translator, Anda pun harus menguasainya.
  • Anda tentunya harus menguasai struktur sintaks bahasa pemrograman Anda sendiri.
Merancang sintaks bahasa pemrograman baru dengan berpedoman pada sintaks lama, akan lebih mudah untuk dikembangkan, sebagai contoh:
Anda merasa bahwa C tidak perlu memakai typedef, maka di sintaks baru, typedef tersebut dihilangkan. Selain menghilangkan statement, Anda juga bisa mengubah command (perintah), misalkan dalam Terminal Linux dirasa terlalu panjang memakai ‘export’ sebagai perintah assignment, maka di sintaks yang baru bisa diganti dengan command ‘set’, atau malah menggunakan metacharacter assignment, yaitu menggunakan karakter assignment = >> atau := (var = isivariabel, dsb.), Anda dapat mempertimbangkan untuk menggunakan include dibanding import. Atau Anda dapat melakukan pengurangan perintah (command reduction), jika sintaks keseluruhan sudah baik menurut Anda. Misalnya: dalam AutoHotkey perintah ‘FileSelectFile’ bisa direduksi menjadi ‘SelectFile’. Atau dalam C++ MessageBox direduksi menjadi MsgBox.
Atau hal yang paling ekstrem, misalnya saja Anda sudah menganggap keseluruhan bahasa pemrograman yang Anda gunakan sudah sangat baik, hanya saja terlalu banyak bahasa asing yang menyulitkan programmer pemula. Untuk itu Anda memutuskan untuk mentranslasikan (menterjemahkan) bahasa pemrograman yang berbahasa Inggris, ke dalam Bahasa Indonesia (atau bahasa lainnya) untuk memudahkan pemahaman dan pengajaran konsep. Hal ini tentu lebih cocok untuk para ‘totally beginner’, ketimbang programmer medium sampai Advanced yang sudah kadung familiar dengan istilah asing yang dimaksud.

Bahasa pemrograman berbahasa Indonesia

Dalam hal ini, pengubahan hanya pada bahasa native pemrograman sebelum, ke bentuk Bahasa Indonesia akan lebih mudah lagi, karena Anda tidak perlu lagi memikirkan kelemahan pemrograman sebelumnnya. Contoh bahasa pemrograman berbahasa Indonesia adalah AYU, Bahasa AYU ini sebenarnya hanya di-parse dan ditranslasi ke dalam bahasa C#, dan di-compile. Namun, pembuatan parser dan translator AYU tidaklah semudah memikirkannya, pasti akan ada kesulitan dalam hal logika, hingga pembuatnya harus menetapkan berbagai aturan dalam parser dan translatornya.

(Terinspirasi oleh) Bahasa Nusa

Saya sangat terkesan oleh bahasa pemrograman Nusa, bahasa Nusa ini sebelumnya bernama Batak, dinamai Batak karena ketidaksukaan pembuatnya (Pak Bernaridho) terhadap Java. Beliau menghilangkan beberapa statement yang dianggapnya tidak perlu, dan saya rasa, sangat efisien dan lebih mudah ketimbang bahasa lain. Tapi, Nusa di-parse dan di-translate bukan kedalam bahasa C# atau C++. Nusa ditranslasikan ke bahasa Low Level, yaitu Assembly. Mendengar Assembly sudah pasti sangat sulit menterjemahkan dari bahasa yang mirip C, Pascal, dst kedalam Assembly. Nah, disinilah letak kesulitannya.

Membuat parser dan translator

Menurut saya, pekerjaan yang paling sulit dalam membuat bahasa pemrograman (interpreted language) adalah: Pertama membuat Parser, kemudian translator, mengapa demikian? Karena parser memilah source code, memeriksa keabsahan script, dan ini sangat rumit, sekalipun dibantu Regular Expression. Belum lagi mengolah sintaks assignment, bertolak belakang dengan translator yang hanya menerima input dari parser dan menulis ke file output. Pandangan terhadap tingkat kesulitan ini tentu berbeda tiap jenis pemrogramannya (hanya translasi atau interpretasi, atau keduanya). Yang pasti translasi lebih mudah dari interpretasi, karena translasi cukup mengolah barisan teks sintaks, sedangkan interpretasi harus merangkap translator plus harus berurusan dengan garbage collection, variable, penanganan event, dan sebagainya.
Mind Controlling
Semua kesulitan diatas bisa diatasi dengan Mind Controlling, apa itu Mind Controlling? Yaitu mengendalikan pikiran agar kita tidak terlalu terbebani memikirkan, mengatur, menulis, testing, debugging bahasa pemrograman yang akan dibuat. Bagaimana caranya?
Seperti yang ditulis dibagian pertama, kita harus punya motivasi, sesuatu yang membuat kita memiliki tujuan untuk apa membuat bahasa pemrograman, seperti yang dialami saya sendiri. Kala itu saya membuat bahasa baru bernama SubDot, yang memiliki misi untuk mengadopsi kekuatan C++, dan kelebihan AutoHotkey, namun untuk siapa bahasa ini dibuat, inilah motivasi yang tidak saya miliki. Dan kehancuran SubDot datang. Selang beberapa minggu, saya termotivasi membuat bahasa baru, untuk mengajari teman yang kesulitan belajar pemrograman, begitu saja ide terus mengalir. Akhirnya bahasa pemrograman yang saya rancang selesai prototipnya, dan saya beri nama Plowbig, kependekkan dari “Programming Language Originally Written By IG (aka Adjie)”. Bahasa Plowbig ini akan dibahas di artikel mendatang.
Merancang parser dan translator
Setelah Anda merancang sintaks Anda sendiri, maka tahap selanjutnya adalah membuat parser dan translator, saya tidak akan menjelaskan cara membuat parser dan translator di artikel ini, karena sudah pasti masing-masing programmer berbeda sintaksnya dan cara pengolahannya. Bila Anda sudah merancang sintaks yang mirip VBS misalnya, berarti Anda harus memparse tiap baris perintah untuk dianalisa dan diekstrak tiap perintah berikut parameternya.
Anda dapat merancang parser dan translator dalam satu executable atau secara terpisah (executable parser dan translator masing-masing). Namun disini kita berbicara kemudahan, Anda bisa mempertimbangkan pilihan kedua. Nah, setelah parser dan translatorselesai dibuat, Anda dapat menggabungkannya.
Lain VBS, lain C++. Dalam C++, C++ berbasis function. Jadi untuk mentranslasikan bahasa yang mirip C++, bisa saja Anda parse perbaris, namun untuk parsing, selalu ingat bahwa C++ (dan beberapa yang lain) menggunakan function Main() sebagai entry-pointnya, akan lebih rumit membuat interpreter-nya.
Tool interpreter, parser, dan translator bisa dibuat menggunakan bahasa apa saja yang menurut Anda cukup powerful, untuk bahasa sejenis VBS (Scripting), cari bahasa pemrograman yang mendukung RegEx, ini adalah solusi termudah daripada harus mentrace setiap string (sangat melelahkan). Praktis, Anda pun harus menguasai RegEx. Lalu bahasa pemrograman yang digunakan (untuk membuat parser dst) harus dapat menangani input/output file (kebanyakan bahasa dapat melakukannya). Bahasa Perl pun bisa dijadikan parser dan translator. Karena Perl memang dibuat untuk keperluan pengolahan string (teks).
Buat Dokumentasi
Ini adalah salah hal yang paling penting. Tanpa dokumentasi, orang lain tak pernah tahu bagaimana cara menggunakan bahasa Anda. Bisa saja Anda mengajarkan langsung kepada user target Anda. Namun, apakah mereka lantas menguasainya seperti Anda? Tentu tidak, terkadang user pun bisa belajar sendiri berbekal dokumentasi. Disamping itu, sertakanlah beberapa sampel script yang dibuat dengan bahasa Anda. Tentu untuk lebih memudahkan lagi.
Adakan Support
Adakalanya Anda merasa dokumentasi Anda sudah sangat baik, tapi apakah para ‘totally beginner’ tahu istilah-istilah dalam dokumentasi Anda? Adakan bantuan dengan mailist, Blog, forum, dsb.
Terus kembangkan
Selalu kembangkan bahasa pemrograman Anda, tingkatkan efisiensi dan kemampuannya, bila perlu, Anda dapat membentuk tim untuk membantu Anda. Dan (bila dikehendaki) Anda bisa meminta donasi (atau meminta bayaran).
Uji kemampuan bahasa pemrograman Anda

Ada sesuatu yang menarik bila Anda telah menciptakan sebuah bahasa pemrograman. Setelah Anda bersusah payah membuat parser, translator, dan menguji bahasa pemrograman Anda sendiri. Anda bisa menguji seberapa hebatkah kemampuan programming language Anda di www.rosettacode.org, di situs ini bahasa pemrograman Anda akan disandingkan dengan bahasa yang berkali-kali lipat lebih populer. Dan, Anda ditantang untuk bisa melakukan suatu ‘task’ dengan bahasa pemrograman Anda, bila bahasa pemrograman Anda mampu melakukan hal-hal umum terlebih spesifik yang ditawarkan rosettacode.org, Anda bisa jadi meraih popularitas tak terduga sebelumnya. Banyak bahasa pemrograman yang masuk dalam rosseta’s challenge mulai dari C++ (yang terkenal) hingga bahasa E (Anda pernah dengar bahasa ini?), semua bahasa pemrograman tersebut mungkin menginspirasi Anda untuk mengembangkan bahasa pemrograman lebih lanjut.


sumber : https://id.wikipedia.org/wiki/Bahasa_pemrograman
              https://adjiesoft.wordpress.com/2010/06/02/bagaimana-cara-membuat-bahasa-pemrograman-sendiri/

Leave a Reply

Subscribe to Posts | Subscribe to Comments

- Copyright © TEKNIK INFORMATIKA - Date A Live - Powered by Blogger - Designed by Johanes Djogan -