Teknik Kompilasi
List Bahasa Pemrograman & Kompiler-nya
Disusun Oleh :
NIM / Nama : 10114702 Revina Nurjanah 10114283 Herdiansyah Pratama 10114251 Aditya Gumilang
10114293 Muhamad Rijal Baihaqi 10112403 Rizky Febri M.
Kelompok : 2 Kelas : TekKom – 1
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS KOMPUTER INDONESIA
2016
Kata Pengantar
Puji dan Syukur kami panjatkan kepada Tuhan Yang Maha Esa, karena telah memberikan rahmat dah hidayah – Nya kepada kita. Sehingga makalah dapat tersusun dengan baik dan dapat disajikan dengan baik.
Kita menyadari bahwa dalam penyusun maupun pengkajiannya masih banyak kekurangan dan kelemahannya. Oleh karena itu, kritik dan saran dari berbagai pihak yang sifat – sifatnya membangun sangat kami harapkan. Demi perbaikan di masa yang akan dating.
Semoga Tuhan Yang Maha Esa senantiasa melimpahkan rahmat dan
karunianya kepada kita semua, dan akhirnya mudah – mudahan makalah ini walaupun sederhana dapat bermanfaat bagi kita khususnya bagi para pembaca. Amin ya robbal
„alamin.
ISI
1. Bahasa Pemrograman AMPL
Sebuah Bahasa Pemrograman Matematika(AMPL) adalah bahasa pemodelan aljabar untuk menggambarkan dan memecahkan masalah tinggi kompleksitas untuk komputasi matematika skala besar (yaitu, optimasi skala besar dan penjadwalan-jenis masalah). Ini dikembangkan oleh Robert Fourer, David Gay, dan Brian Kernighan di Bell Laboratories. AMPL mendukung puluhan pemecah, baik open source dan perangkat lunak komersial, termasuk CBC, CPLEX, FortMP, Gurobi, Minos, IPOPT, SNOPT, KNITRO, dan LGO. Masalah dilewatkan ke pemecah sebagai file nl. AMPL digunakan oleh lebih dari 100 klien, dan oleh instansi pemerintah dan institusi akademik.
Salah satu keuntungan dari AMPL adalah kesamaan sintaks untuk notasi matematika dari masalah optimasi. Hal ini memungkinkan untuk definisi yang sangat ringkas dan mudah dibaca dari masalah dalam domain optimasi. Banyak pemecah modern yang tersedia pada Server NEOS (sebelumnya diselenggarakan di Argonne National Laboratory, saat ini diselenggarakan di University of Wisconsin, Madison) menerima AMPL masukan. Menurut statistik NEOS AMPL adalah format yang paling populer untuk mewakili masalah pemrograman matematis.
Source Code set Plants;
set Markets;
# Capacity of plant p in cases param Capacity{p in Plants};
# Demand at market m in cases param Demand{m in Markets};
# Distance in thousands of miles param Distance{Plants, Markets};
# Freight in dollars per case per thousand miles param Freight;
# Transport cost in thousands of dollars per case param TransportCost{p in Plants, m in Markets} :=
Freight * Distance[p, m] / 1000;
# Shipment quantities in cases var shipment{Plants, Markets} >= 0;
# Total transportation costs in thousands of dollars minimize cost:
sum{p in Plants, m in Markets} TransportCost[p, m] * shipment[p, m];
# Observe supply limit at plant p
s.t. supply{p in Plants}: sum{m in Markets}
shipment[p, m] <= Capacity[p];
# Satisfy demand at market m
s.t. demand{m in Markets}: sum{p in Plants}
shipment[p, m] >= Demand[m];
data;
set Plants := seattle san-diego;
set Markets := new-york chicago topeka;
param Capacity :=
seattle 350 san-diego 600;
param Demand :=
new-york 325 chicago 300 topeka 275;
param Distance : new-york chicago topeka :=
seattle 2.5 1.7 1.8 san-diego 2.5 1.8 1.4;
param Freight := 90;
Kompiler Linux c compiler
Sumber https://en.wikipedia.org/wiki/AMPL
2. Bahasa Pemrograman ADS ADS adalah sebuah antarmuka.
ADS adalah sebuah antarmuka pemrograman aplikasi yang memungkinkan biner program yang ditulis dalam C atau C ++, dikompilasi dengan kompiler standar industri, untuk berkomunikasi pada saat run-time dengan editor gambar AutoCAD.
ADS adalah bahasa kombinasi.
ADS adalah bahasa kombinasi yang memungkinkan pengembangan aplikasi untuk AutoCAD di bahasa C dan C ++. Ini adalah bahasa standar industry untuk pengembangan program komersial skala besar. (Kedua AutoCAD dan ADS perpustakaan dan file header yang ditulis terutama dalam C.)
ADS adalah sistem pengembangan aplikasi.
ADS adalah sistem untuk mengembangkan kuat dan canggih vertikal-pasar aplikasi untuk AutoCAD. AutoCAD Lanjutan Modeling ExtensionÒ (AME), AutoCAD Render, dan AutoCAD SQL ExtensionÔ (ASE) adalah semua aplikasi ADS, seperti yang paling kuat dan canggih pihak ketiga aplikasi yang tersedia saat ini untuk AutoCAD.
ADS adalah kode bahasa C.
ADS adalah seperangkat perpustakaan dan header dalam bahasa pemrograman C, dan yang terkait dokumentasi.
Setiap aplikasi ADS banyak mencakup tiga file header:
· ads.h
· adscodes.h
· adslib.h
adslib.h berisi referensi untuk memasukkan adscodes.h dan ads.h.
Isi ads.h
1. Jenis definisi tipe data ADS-spesifik.
2. Prototip untuk fungsi ADS perpustakaan.
3. Definisi untuk ads_initget () kode bit.
4. definisi utilitas Miscellaneous.
adscodes.h
1. Definisi untuk permintaan, hasil dan menghasilkan kode tipe.
adslib.h
1. Sistem tergantung definisi.
2. definisi utilitas Miscellaneous.
3. Macro untuk memperluas _ (()) sintaks ditemukan di deklarasi fungsi prototipe.
Source Code case RQSUBR:
switch (ads_getfuncode()) { case 0:
if (foo() != RTNORM) { scode = RSERR;
} break;
default:
ads_printf("\nError - no such function defined.");
scode = RSERR;
break;
}
Kompiler BorlandTurbo Cor MicrosoftC.
Sumber http://www.engr.uvic.ca/~mech410/ACAD_and_C/ads_arx/ads.pdf
3. Bahasa Pemrograman AdvPL
Salah satu komputer aplikasi yang paling sering dan berguna dan sistem informasi adalah penyimpanan, kontrol dan pengolahan database. Sebuah bahasa pemrograman memungkinkan data ini untuk dipulihkan, diproses, diubah menjadi informasi lain melalui perhitungan, direkam dan ditampilkan kepada pengguna melalui pencarian atau laporan.
Salah satu sistem informasi yang paling digunakan oleh perusahaan saat ini adalah ERP (Enterprise Resource Planning). Melalui ERP, semua bidang perusahaan yang terintegrasi, berbagi data dan memberikan kelincahan dan ketepatan dalam generasi dan transmisi data antar wilayah dan departemen perusahaan. Misalnya, ketika daerah Faktur mengeluarkan faktur, sistem secara otomatis menghasilkan tagihan masing piutang di daerah Keuangan.
AdvPL adalah bahasa pemrograman yang lengkap untuk pengembangan aplikasi di ERP Protheus, dikembangkan dan diperdagangkan oleh TOTVS. Asal-usulnya didasarkan pada bahasa pola xBase, seperti Clipper dan lain-lain.
AdvPL adalah bahasa yang sangat kuat, fleksibel dan lengkap. Melalui ini, Anda dapat mengembangkan aplikasi baru untuk ERP Protheus dan mengadaptasi beberapa prosesdengan kebutuhan masing-masing perusahaan.
Dengan AdvPL adalah mungkin untuk mengembangkan aplikasi untuk:
- Buat, berhubungan dan mengatur sekelompok data.
- Memanipulasi data melalui operasi inklusi, perubahan dan eksklusi. Selain itu, adalah mungkin untuk melihat mereka selektif dan sesuai dengan spesifikasi pengguna.
- Mengeksekusi operasi matematika, logis dan keputusan dengan data, menghasilkan data baru atau penggalian informasi. Buat layar untuk pemeliharaan dan melihat data pengguna.
- Membuat laporan sehingga pengguna dapat melihat data.
- Memungkinkan interaksi pengguna dengan aplikasi melalui halaman web dan e-mail.
Dengan bahasa AdvPL, kita dapat bekerja dengan beberapa DBMS, baik yang berbayar maupun gratis, seperti SQL, Oracle, DB2, Informix, Postgre, MySql, dll
Source Code // It displays, for a determined amount of times, a data on the screen.
FUNCTION Message(xDado, nVezes)
LOCAL nRepet := 0
IF VALTYPE(xDado) == "C"
// Character type data xDado := xDado
ELSEIF VALTYPE(xDado) == "N"
// Numeric type data
xDado := LTRIM(STR(xDado)) ELSEIF VALTYPE(xDado) == "D"
// Date type data
xDado := DTOC(xDado) ELSEIF VALTYPE(xDado) == "L"
// Logic type data
xDado := IIF(xDado, "Verdadeiro",
"Falso") ELSE
// Another type of data xDado := "Indefinido"
ENDIF
FOR nRepet := 1 TO nVezes MSGALERT(xDado) NEXT nRepet
RETURN
Kompiler SQL, Oracle, DB2, Informix, Postgre, MySql Sumber http://tdn.totvs.com/display/tecen/AdvPl
4. Bahasa Pemrograman AFNIX
AFNIX adalah mesin fungsional multi-threaded dengan binding simbol dinamis yang mendukung paradigma berorientasi objek. Sistem ini memiliki keadaan mesin runtime seni yang berjalan di kedua 32 dan 64 bit platform. Sistem spesifikasi menawarkan sintaks kaya yang membuat pemrograman fungsional kegiatan yang menyenangkan. Ketika penafsir digunakan secara interaktif, teks yang dimasukkan pada baris perintah dan dieksekusi jika benda sintaksis yang lengkap dan valid telah dibangun. Atau, penafsir dapat menjalankan file sumber atau beroperasi dengan input stream.
AFNIX adalah seperangkat aplikasi klien, modul dan jasa. Distribusi asli berisi juru inti dengan klien tambahan seperti compiler, pustakawan dan debugger. pendistribusian ini terdapat juga bermacam-macam set modul yang didedikasikan untuk domain tertentu. Modul dasar adalah standar i / o modul, modul sistem dan modul jaringan. Modul-modul tersebut berupa layanan. Sebuah layanan perpanjangan dari mesin yang menyediakan fungsionalitas tambahan dengan bantuan dari beberapa modul. Hirarki ini ketat dalam hal desain sistem dan memberikan pemisahan fungsional yang jelas antara domain aplikasi. Ketika mencari fitur tertentu, selalu berupa gagasan yang baik untuk berpikir dalam hal fungsi modul atau layanan.
AFNIX beroperasi dengan serangkaian kata kunci dan predikat. Mesin ini memiliki database Unicode asli. Set objek standar memberikan dukungan untuk bilangan bulat, bilangan real, string, karakter dan boolean. Berbagai wadah seperti daftar, vektor, tabel hash, bitset, dan grafik juga tersedia dalam distribusi inti. sintaks menggabungkan konsep ekspresi lambda dengan penutupan eksplisit. Simbol pembatasan ruang lingkup dalam ekspresi lambda adalah fitur yang disebut ekspresi gamma. Form seperti notasi dengan blok deklarasi mudah juga
ekstensi lain sehubungan dengan sistem lainnya. Model objek menyediakan mekanisme warisan tunggal dengan resolusi simbol dinamis. Fitur khusus termasuk misalnya orangtua, kelas mengikat contoh inferensi dan rasa hormat. kelas asli derivasi dan metode override juga merupakan bagian dari model objek dengan objek kelas tetap dan bentuk. Mesin ini menggabungkan mesin ekspresi reguler asli dengan pencocokan kelompok, sama persis atau parsial dan substitusi. Sebuah mesin pengecualian canggih juga dilengkapi dengan kompatibilitas run-time asli.
AFNIXimplements mesin multi-berulir benar dengan mekanisme perlindungan otomatis objek terhadap akses bersamaan. Sebuah membaca dan menulis sistem penguncian yang beroperasi dengan mesin benang juga dibangun dalam sistem inti. Manajemen memori obyek otomatis dalam interpreter inti. Akhirnya, mesin ditulis dalam C ++ dan menyediakan kompatibilitas runtime dengan itu. kompatibilitas tersebut meliputi kemampuan untuk instantiate C ++ kelas, menggunakan metode virtual dan menaikkan atau menangkap pengecualian. Sebuah antarmuka pemrograman yang luas telah dirancang untuk memudahkan integrasi perpustakaan asing.
Source Code # declare the factorial procedure const fact (lambda (n) (
if (== n 1) 1 (* n (fact (- n 1)))))
# compute factorial 5
println "factorial 5 = " (fact 5) Kompiler Linux 3.x, 4.x
Sumber http://www.afnix.org/xht/wnx-us-rfman.xht
5. Bahasa Pemrograman Alef
Alef muncul di edisi pertama dan kedua dari Plan 9, tetapi ditinggalkan selama pengembangan dari edisi ketiga. Rob Pike kemudian menjelaskan kematian Alef ini dengan menunjuk kurangnya manajemen memori otomatis, meskipun Pike dan orang lain mendesak Winterbottom untuk menambah pengumpulan sampah ke bahasa; [3] juga, di bulan Februari 2000 slideshow, Pike mencatat: "... meskipun Alef adalah bahasa bercabang, itu terbukti terlalu sulit untuk mempertahankan bahasa varian di beberapa arsitektur, jadi kami mengambil apa yang kita pelajari dari itu dan membangun perpustakaan benang untuk C. "
Alef digantikan oleh dua lingkungan pemrograman. Bahasa pemrograman Limbo dapat dianggap sebagai penerus langsung dari Alef dan merupakan bahasa yang paling umum digunakan di sistem operasi Inferno. Alef Model concurrency direplikasi di edisi ketiga Plan 9 dalam bentuk perpustakaan libthread, yang membuat beberapa fungsi Alef ini tersedia untuk program C dan memungkinkan program Alef yang ada (seperti Acme) untuk diterjemahkan.
Source Code (int, byte*, byte) func()
{
return (10, "hello", ’c’);
}
void main() {
int a;
byte* str;
byte c;
(a, str, c) = func();
} Kompiler Plan 9
Sumber https://en.wikipedia.org/wiki/Alef_(programming_language)
6. Bahasa Pemrograman Aikido
Template: Infobox bahasa pemrograman Aikido adalah bahasa pemrograman yang dapat digunakan untuk scripting cepat, prototyping dan tugas-tugas pemrograman umum. Ini dikembangkan di Sun Microsystems Laboratories oleh David Allison dan dirilis sebagai open source pada bulan September 2003. Ini adalah dinamis diketik, berorientasi objek bahasa dengan built-in multithreading. Dalam beberapa hal itu mirip fungsi untuk Python, Perl, JavaScript dan Java. Sintaksis itu sangat mirip dengan C ++ dan Java.
Source Code function write (thing, stream) { function writeInt {
// code to write an integer }
function writeString { // code to write a string }
if (typeof (thing) == “integer”) { writeInt ()
} elif (typeof (thing) == “string”) { writeString ()
} else {
throw “Invalid type”
} }
Kompiler Aikido Program
Sumber http://en.wikademia.org/Aikido_(programming_language)
7. Bahasa Pemograman Visual Prolog
Delphi adalah Suatu bahasa pemrograman yang menggunakan visualisasi sama seperti bahasa pemrograman Visual Basic ( VB ) . Namun Delphi menggunakan bahasa yang hampir sama dengan pascal (sering disebut objeck pascal ) . Sehingga lebih mudah untuk digunakan . Bahasa pemrograman Delphi dikembangkan oleh CodeGear sebagai divisi pengembangan perangkat lunak milik embarcadero . Divisi tersebut awalnya milik borland , sehingga bahasa ini memiliki versi Borland Delphi .
Delphi juga menggunakan konsep yang berorientasi objek ( OOP ) , maksudnya pemrograman dengan membantu sebuah aplikasi yang mendekati keadaan dunia yang sesungguhnya . Hal itu bisa dilakukan dengan cara mendesign objek untuk menyelesaikan masalah . OOP ini memiliki beberapa unsur yaitu ; Encapsulation ( pemodelan ) , Inheritance ( Penurunan ) , Polymorphism ( Polimorfisme ) .
Awalnya bahasa pemrograman delphi hanya dapat digunakan di Microsoft Windows, namun saat ini telah dikembangkan sehingga dapat digunakan juga di Linux dan di Microsoft .NET . Dengan menggunakan free pascal yang merupakan proyek OpenSource, bahasa pemrograman ini dapat membuat program di sistem operasi Mac OS X dan Windows CE .
Umumnya delphi hanya digunakan untuk pengembangan aplikasi dekstop, enterprise berbasis database dan program - program kecil . Namun karena pengembangan delphi yang semakin pesat dan bersifat general purpose bahasa pemrograman ini mampu digunakan untuk berbagai jenis pengembangan software . Dan Delphi juga disebut sebagai pelopor perkembangan RadTool ( Rapid Apllication Development ) tahun 1995 . Sehinnga banyak orang yang mulai mengenal dan menyukai bahasa pemrograman yang bersifat VCL ( Visual Component Library ) ini.
Source code
unit Unit1; //nama unit
interface uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs; //modul modul yang dipakai dalam program, modul ini telah disediakan oleh delphi.
Type //mendeklarasikan type utama, setiap unit paling tidak terdiri dari sebuah type
TForm1 = class(TForm) Button1: TButton;
procedure Button1Click(Sender: TObject); //procedur dari button jika di klik
Private
Tuliskan disini procedure, variable yang diperlukan yang HANYA bisa diakses oleh unit ini saja
{ Private declarations } public
Tuliskan disini procedure, variable yang diperlukan yang bisa diakses oleh seluruh unit dalam project.
{ Public declarations } end;
var
Form1: TForm1;
implementation {$R *.dfm}
//mulai disinilah anda akan menuliskan kode
procedure TForm1.Button1Click(Sender: TObject);
begin
//program yang akan dijalankan ketika button 1 di klik
end;
end.
Kompiler Borlan Delphi 7.0
sumber https://id.wikipedia.org/wiki/Embarcadero_Delphi#Bahasa_pemrograman
8. Bahasa Pemograman Turbo Pascal
Turbo Pascal adalah sebuah sistem pengembangan perangkat lunak yang terdiri atas kompiler dan lingkungan pengembangan terintegrasi (dalam bahasa inggris: Integrated Development Environment - IDE) atas bahasa pemrograman pascal untuk sistem operasi CP/M, CP/M-86, dan MS-DOS, yang dikembangkan oleh Borland pada masa kepemimpinan Philippe Kahn. Nama Borland Pascal umumnya digunakan untuk paket perangkat lunak tingkat lanjut (dengan kepustakaan yang lebih banyak dan pustaka kode sumber standar) sementara versi yang lebih murah dan paling luas digunakan dinamakan sebagai Turbo Pascal. Nama Borland Pascal juga digunakan sebagai dialek spesifik Pascal buatan Borland.
Borland telah menembangkan tiga versi lama dari Turbo Pascal secara gratis disebabkan karena sejarahnya yang panjang khusus untuk versi 1.0, 3.02, dan 5.5 yang berjalan pada sistem operasi MS-DOS.
Source Code program TulisNama;
var
ANama: String; { Deklarasi variabel Name sebagai string }
AUlang: integer; { variabel yang digunakan untuk perulangan }
begin
Write('Masukkan nama anda: ');
Readln(ANama); { Readln akan membaca masukan yang dientrikan oleh pengguna }
for AUlang := 1 to 100 do WriteLn('Halo ', ANama) end.
Kompiler Turbo Pascal, Bloodshed Dev-Pascal Sumber https://id.wikipedia.org/wiki/Turbo_Pascal
9. Bahasa Pemograman Fantom
Fantom merupakan tujuan umum bahasa pemrograman berorientasi objek yang diciptakan oleh Brian dan Andy Frank yang berjalan pada Java Runtime Environment (JRE), JavaScript, dan NET Common Language Runtime (CLR) (NET seperti "prototipe " status).
Tujuan desain utamanya adalah untuk menyediakan API perpustakaan standar yang abstrak
jauh pertanyaan apakah kode akhirnya akan berjalan pada JRE atau CLR. Seperti C # dan Java, Fantom menggunakan sintaks kurung kurawal. bahasa ini mendukung pemrograman fungsional melalui penutupan dan concurrency melalui model Aktor. Fantom mengambil pendekatan "jalan tengah" system pada jenisnya, campuran bersama-sama aspek baik mengetik statis dan dinamis.
Source Code <// Hello from Fantom!
class HelloWorld {
static Void main() {
echo("Hello, World!") }
}
Kompiler Fantom Program
Sumber https://en.wikipedia.org/wiki/Fantom_(programming_language)
10. Bahasa Pemograman Pike
Pike adalah bahasa pemrograman scripting yang memiliki sintaks mirip dengan C++
dan Java. Bahasa pemrograman ini adalah bahasa pemrograman scripting dinamis yang sangat mudah di pelajari. Bahasa pemrograman ini juga memiliki banyak fungsi dan tipe data yang sangat baik bila digunakan untuk pemrosesan data.
Pike berakar dari LPC (Lars Pensjö C), yaitu bahasa pemrograman scripting yang dibuat oleh Lars Pensjö seorang mahasiswa Chalmers University Swedia. Bahasa pemograman ini bertujuan untuk membuat prototipe permainan komputer berjenis adventure.
Pada tahun 1994, seorang programmer bernama Fredrik Hübinette memainkan permainan komputer yang dibuat oleh Lars Pensjö. Fredrik sangat tertarik dengan bahasa pemrograman yang dipakai oleh permainan komputer tersebut dan ingin mengembangkan LPC, sehingga muncul LPC4, yaitu LPC hasil pengembangan Frederik Hübinette. Akan tetapi karena ada permasalahan hak cipta antara Lasr dan Frederik, maka Frederik memutuskan untuk menulis ulang seluruh kode LPC kemudian dia menamakan bahasa pemrograman baru tersebut menjadi µLPC. µLPC berlisensikan GPL.
Pada tahun 1996, Fredrik Hübinette berkerja pada perusahaan bernama Roxen Internet Software. Semenjak Fredrik berkerja pada perusahaan tersebut, pengembangan µLPC didanai oleh perusahaan tersebut. Dan sebagian besar produk perusahaan tersebut ditulis dengan menggunakan µLPC. Pada tahap pengembangan ini µLPC berbah nama menjadi Pike.
Pada tahun 2002, pengembangan Pike diserahkan ke Linköping University.
Source Code int main() {
write("Hello World !");
}
Kompiler Pike Program
Sumber https://id.wikipedia.org/wiki/Pike_(bahasa_pemrograman)
11. Bahasa Pemograman JSP
JSP adalah suatu teknologi web berbasis bahasa pemrograman Java dan berjalan di Platform Java, serta merupakan bagian teknologi J2EE (Java 2 Enterprise Edition). JSP sangat sesuai dan tangguh untuk menangani presentasi di web.
Sedangkan J2EE merupakan platform Java untuk pengembangan sistem aplikasi enterprise dengan dukungan API (Application Programming Inteface) yang lengkap dan portabilitas serta memberikan sarana untuk membuat suatu aplikasi yang memisahkan antara business logic (sistem), presentasi dan data.
JSP merupakan bagian dari J2EE dan khususnya merupakan komponen web dari aplikasi J2EE secara keseluruhan. JSP juga memerlukan JVM (Java Virtual Machine) supaya dapat berjalan, yang berarti juga mengisyaratkan keharusan menginstal Java Virtual Machine di server, dimana JSP akan dijalankan. Selain JVM, JSP juga memerlukan server yang disebut dengan Web Container.
Teknologi JSP menyediakan cara yang lebih mudah dan cepat untuk membuat halaman-halaman web yang menampilkan isi secara dinamik. Teknologi JSP didesain untuk membuat lebih mudah dan cepat dalam membuat aplikasi berbasis web yang bekerja dengan berbagai macam web server, application server, browser dan development tool.
Java Server Pages (JSP) adalah bahasa scripting untuk web programming yang bersifat server side seperti halnya PHP dan ASP. JSP dapat berupa gabungan antara baris HTML dan fungsi-fungsi dari JSP itu sendiri. Berbeda dengan Servlet yang harus dikompilasi oleh USER menjadi class sebelum dijalankan, JSP tidak perlu dikompilasi oleh USER tapi SERVER yang akan melakukan tugas tersebut. Makanya pada saat user membuat pertama kali atau melakukan modifikasi halaman dan mengeksekusinya pada web browser akan memakan sedikit waktu sebelum ditampilkan.
Source Code <html>
<body>
<% out.println("Hello World !"); %>
</body>
</html>
Kompiler Apache Tomcat
Sumber https://id.wikipedia.org/wiki/JSP
12. Bahasa Pemograman Fortran
FORTRAN merupakan salah satu bahasa pemrograman yang cukup tua, lahir pada tahun 1957 dari sebuah tim yang dipimpin oleh John W. Backus. FORTRAN yang merupakan singkatan dari Formula Translation dibuat untuk memenuhi kebutuhan dalam hal numerik. Banyak fungsi matematika yang telah didefinisikan sehingga tidak perlu lagi dilakukan pendefinisian secara manual di program.
Dikembangkan pada 1954 hingga 1956 oleh John Backus dan staff IBM yang lain. FORTRAN (FORmula TRANslator) merupakan bahasa level tinggi yang pertama. FORTRAN pada mulanya didesain untuk mengekspresikan humus matemática dan maíz merupakan bahasa matemática yang paling banyak digunakan.
Bahasa ini juga berguna untuk aplikasi bisnis yang kompleks, seperti perkiraan (forecasting) dan pemodelan. Namur karena tidak mampu manangani operasi input/output atau pemrosesan file dalam volume besar, maka bahasa FORTRAN tidak digunakan untuk masalah bisnis yang biasa.
Saat ini perkembangan bahasa pemrograman FORTRAN cukup pesat, dengan lahirnya Fortran 77 dan Fortran 90 telah membuat bahasa ini menjadi leader dalam hal pemrograman numerik. Tidak heran banyak programmer dalam bidang komputasi masih tetap menggunakan bahasa pemrograman Fortran untuk menyelesaikan masalah numerik.
Bahasa Pemrograman FORTRAN memiliki kelebihan dan kekekurangan : Kelebijan Bahasa Pemrograman FORTRAN
- FORTRAN bisa menangani ekspresi matemática dan logika yang kompleks.
Pernyataanya cukup pendek dan sederhana.
- Program FORTRAN yang dikembangkan pada satu tipe komputer bisa dengan mudah dimodifikasi agar bisa bekerja pada tipe yang lain.
Kekurangan Bahasa Pemrograman FORTRAN
- FORTRAN tidak menangani operasi input dan output pada peralatan penyimpanan seefisien bahasa lain yang levelnya lebih tinggi
- Memiliki keterbatasan untuk mengekspresikan dan memproses data nonnumerik.
- Tidak bisa dibaca atau dipahami semudah bahasa level tinggi yang
Terdapat beberapa hal yang menjadikan bahasa pemrograman Fortran lebih unggul dibandingkan dengan bahasa pemrograman lain yaitu,
- proses eksekusi / kompilasi program yang cukup cepat.
- metode penulisan program sangat fleksibel, setiap bagian blok program dapat ditulis secara tidak berurutan.
- mendukung teknik kompilasi secara menyeluruh (all compilation), maksudnya misalkan kita memiliki 5 buah file Fortran yang saling berhubungan maka semua file tersebut dapat langsung dikompilasi semua dalam satu perintah dengan bantuan makefile yang kita buat, bagian ini akan dijelaskan pada bab yang akan datang.
- memilki kompilator (compiler) yang cukup banyak berkembang.
Masih banyak keunggulan yang dimiliki oleh bahasa pemrograman ini yang mungkin dapat dirasakan ketika kita membuat program. Pada bab selanjutnya akan dibahas mengenai cara kompilasi dan beberapa contoh program dalam bahasa Fortran dan juga bahasa C.
Source Code program average
! Read in some numbers and take the average ! As written, if there are no data points, an average of zero is returned
! While this may not be desired behavior, it keeps this example simple
implicit none
real, dimension(:), allocatable :: points
integer :: number_of_points real ::
average_points=0., positive_average=0., negative_average=0.
write (*,*) "Input number of points to average:"
read (*,*) number_of_points
allocate (points(number_of_points))
write (*,*) "Enter the points to average:"
read (*,*) points
! Take the average by summing points and dividing by number_of_points
if (number_of_points > 0) average_points = sum(points) / number_of_points
! Now form average over positive and negative points only
if (count(points > 0.) > 0) then
positive_average = sum(points, points > 0.) / count(points > 0.)
end if
if (count(points < 0.) > 0) then
negative_average = sum(points, points < 0.) / count(points < 0.)
end if
deallocate (points)
! Print result to terminal
write (*,'(a,g12.4)') 'Average = ', average_points write (*,'(a,g12.4)') 'Average of positive points = ', positive_average
write (*,'(a,g12.4)') 'Average of negative points = ', negative_average
end program average
Kompiler GNU Fortran, Intel® Fortran Compilers, Oracle Solaris Studio Sumber https://en.wikipedia.org/wiki/Fortran
13. Bahasa Pemrograman RPG
RPG adalah bahasa pemrograman High Level yang di-disain untuk keperluan bisnis, biasanya berkolabarasi dengan COBOL, ingat COBOL juga punya aturan ketat dalam penulisan sintaknya, yang menggunakan kolom-kolom dan specification area.
Mengapa RPG atau COBOL menggunakan kolom dalam penulisannya karena pada zaman nenek moyang kita dahulu dimana monitor input adalah barang mahal, maka
waktu itu diperkenalkan yang namanya program punch-card, agar memudahkan digunakan kolom-kolom.
RPG merupakan singkatan dari Report Program Genarator, yang pada awalnya dikhususkan untuk membuat report-report (kalau sudah mendalami, akan dirasakan betapa mudahnya membuat report dengan berbagai macam format layaknya crystal report).
Pada perkembangannya RPG menjadi bahasa yang digunakan untuk pengembangan bisnis dan bukan saja report.RPG sebenarnya multi platform, standard internationalnya mengacu pada RPG III. RPG IV atau RPG/ILE merupakan non- standar RPG yang dikembangkan khusus untuk I Series.
Pada RPG/ILE untuk specification C kita bisa coding bebas tanpa terikat dengan kolom (menggunakan /FREE). Masing-masing specification biasanya memiliki sub specification (untuk F, I, C). RPG/ILE mengenal pointer memory karena sifatnya sebagai language embeded.
Untuk coding RPG sendiri diperlukan penempatan code yang benar, salah-salah menempatkan code hasilnya akan error atau tidak terbaca. Gambar diatas adalah contoh source code. Bisa dilihat kalau penempatan codenya harus benar, kalau meleset sedikit saja maka compiler akan menganggap itu error.
Caranya bagaimana? cukup dengan menekan F4, maka akan ditampilkan form sederhana untuk menulis code. Lantas di form tersebut, jika ingin menulis sesuatu tetapi tidak tahu mau diisi apa di field tersebut, maka bisa teken F1 atau help dan akan ditampilkan untuk field di form tersebut.
Cara penulisannya juga berbeda dengan bahasa pemrograman lain, kalau coding di high level language, untuk setiap statement if ataupun while, akan kasih indent agar yang melihat codingnya juga nyaman. Tapi di RPG harus menulisnya semua rata, tidak ada indent sehingga jika ada if ataupun while maka harus beri comment supaya memudahkan mencari awal dan akhir dari if ataupun while tersebut.
Struktur di RPG yaitu ada main source section dan subprocedure section. Di RPG IV ada form spesifikasi yang masing-masing mempunyai fungsi yang berbeda-beda dan penulisan spesifikasi tersebut harus berdasarkan urutan sebagai berikut:
- Control specifications (ditandai dengan 'H'), memberikan info (program name, format date, debuging info) untuk compiler mengenai bagaimana program di-compile dan dijalankan.
- File description specifications (ditandai dengan 'F'), mendefinisikan semua table yang digunakan di dalam program.
- Definition specifications (ditandai dengan 'D'), mendifinisikan semua variable yang digunakan di dalam program.
- Input specifications (ditandai dengan 'I'), mendefinisikan semua input records dan fields yang digunakan di dalam program.
- Calculation specifications (ditandai dengan 'C'), mendefinisikan proses operasi dan perhitungan seperti membaca mengubah dan menambah record di table, dan melakukan perhitungan .
- Output specification (ditandai dengan 'O'), mendefinisikan output records dan fields yang digunakan oleh program.
Setelah source code jadi, dicompile dan dijalankan (dengan mengetik line command 'CALL PGM_NAME'). Untuk mendebug program bisa menggunakan line command 'STRDBG' start debug lalu tekan F4, yang nantinya bisa menginput program name yang mau di debug dan ada di library yang mana. Debuger cukup familiar karena sama persis dengan debugger Visual C++ dimana bisa menentukan breakpoint dan watch value.
Buat yang mau coba-coba RPG Programming ini, setidaknya pernah menggunakan sistem operasi OS/400, karena OS400 bener-bener beda dengan Windows maupun Linux.
Source Code * AUTHOR : SAMUEL FRANKLYN <SFRANKLYN AT GMAIL.COM>
* LOCATION : SAMUELF1/QDDSSRC(CUSTPF) * DATE : 2014-02-02
*
* FILE DEFINITION
A UNIQUE * RECORD DEFINITION
A R CUSPFR TEXT('CUSTOMER')
* FIELD DEFINITION
A CSNUM 10S 0 TEXT('NUMBER')
A COLHDG('NUMBER')
A CSNAME 30A TEXT('NAME')
A COLHDG('NAME')
A CSBDAY L TEXT('BIRTH DAY')
A COLHDG('BIRTH DAY')
A DATFMT(*ISO)
A CSADDR 50A TEXT('ADDRESS')
A COLHDG('ADDRESS')
A CSPOST 5A TEXT('POST CODE')
A COLHDG('POST CODE')
A CSEML 50A TEXT('EMAIL')
A COLHDG('EMAIL')
* KEY DEFINITION A K CSNUM
Kompiler sistem operasi OS/400
Sumber https://en.wikipedia.org/wiki/IBM_RPG 14. Bahasa Pemrograman AJAX
Asynchronous JavaScript and XMLHTTP, atau disingkat AJaX, adalah suatu teknik pemrograman berbasis web untuk menciptakan aplikasi web interaktif.
Tujuannya adalah untuk memindahkan sebagian besar interaksi pada komputer web
surfer, melakukan pertukaran data dengan server di belakang layar, sehingga halaman web tidak harus dibaca ulang secara keseluruhan setiap kali seorang pengguna melakukan perubahan. Hal ini akan meningkatkan interaktivitas, kecepatan, dan usability. Ajax merupakan kombinasi dari:
DOM yang diakses dengan client side scripting language, seperti VBScript dan implementasi ECMAScript seperti JavaScript dan JScript, untuk menampilkan secara dinamis dan berinteraksi dengan informasi yang ditampilkan
Objek XMLHTTP dari Microsoft atau XMLHttpRequest yang lebih umum di implementasikan pada beberapa browser. Objek ini berguna sebagai kendaraan pertukaran data asinkronus dengan web server. Pada beberapa framework AJAX, element HTML IFrame lebih dipilih daripada XMLHTTP atau XMLHttpRequest untuk melakukan pertukaran data dengan web server.
XML umumnya digunakan sebagai dokumen transfer, walaupun format lain juga memungkinkan, seperti HTML, plain text. XML dianjurkan dalam pemakaian teknik AJaX karena kemudahan akses penanganannya dengan memakai DOM
JSON dapat menjadi pilihan alternatif sebagai dokumen transfer, mengingat JSON adalah JavaScript itu sendiri sehingga penanganannya lebih mudah
Seperti halnya DHTML, LAMP, atau SPA, Ajax bukanlah teknologi spesifik, melainkan merupakan gabungan dari teknologi yang dipakai bersamaan. Bahkan, teknologi turunan/komposit yang berdasarkan Ajax, seperti AFLAX sudah mulai bermunculan..
Source Code <!DOCTYPE html>
<html>
<head>
<title>Contoh Ajax Sederhana</title>
<meta charset="UTF-8">
<script>
function loadXMLDoc() {
var xmlhttp;
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else
{// code for IE6, IE5 xmlhttp=new
ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4
&& xmlhttp.status==200) {
document.getElementById("myDiv").innerHTM L=xmlhttp.responseText;
} }
xmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();
}
</script>
</head>
<body>
<div id="myDiv"><h2>Let AJAX change this text</h2></div>
<button type="button"
onClick="loadXMLDoc()">Change Content</button>
</body>
</html>
Kompiler JavaScript, Java, PHP, .NET, Perl, Python Sumber https://id.wikipedia.org/wiki/AJAX
15. Bahasa Pemrograman ALGO
Algo adalah bahasa pemrograman aljabar dikembangkan antara 1959 dan 1961 untuk komputer Bendix G-15.
Algo adalah salah satu dari beberapa bahasa pemrograman terinspirasi oleh Laporan Pendahuluan pada Bahasa ditulis dalam Zürich pada tahun 1958. Laporan ini mengalami beberapa modifikasi sebelum menjadi Revisi Laporan yang paling ALGOL implementasi didasarkan. Akibatnya, Algo dan awal "ALGOLs" lain memiliki sintaks yang sangat berbeda dari ALGOL 60.
Bahasa lainnya dikembangkan dari laporan Zürich termasuk BALGOL, MAD (Michigan Algoritma Decoder) dan NELIAC.
Source Code
TITLE TRABB PARDO-KNUTH ALGORITHM SUBSCript I,J
DATA A(11)
FORMAt FI(2DT), FLARGE(3D) PROCEdure F(T=Z)
BEGIN
Z=SQRT(ABS(T))+5*T^3 END
FOR I=0(1)10 A[I]=KEYBD
FOR J=0(1)10 BEGIN I=J-10
F(A[I]=Y) PRINT(FI)=I IF Y > 400 GO TO LARGE PRINT(FL)=Y GO TO NEXT
LARGE: PRINT(FLARGE)=999 NEXT: CARR(1) END
2END
Kompiler Algo Program, Algrebraic compiler untuk BENDIX-G15 Sumber https://en.wikipedia.org/wiki/ALGO
16. Bahasa Pemrograman ALGOL
ALGOL (Algorithmic Language) adalah satu dari beberapa bahasa tingkat tinggi/HLL yang secara spesifik didesain untuk pemrograman komputasi spesifik.
Mulai diperkenalkan pada akhir tahun 1950-an, dengan debut pertama ALGOL 58, kemudian dilanjutkan dengan rilisnya ALGOL 60, dan ALGOL 68. Algol didesain oleh komite internasional sebagai bahasa pemrograman yang universal. Komite internasional ini menyelenggarakan konferensi, yang bertempat di Kota Zurich, Switzerland, sebagai upaya formal yang ditempuh untuk mengemukakan isu tentang probabilitas software. Mesin yang mengenali bahasa pemrograman ALGOL memungkinkan programmernya untuk lebih kreatif dalam mengembangkan programnya, namun dalam mengimplementasikan program ini nampaknya tidak semudah membalikkan telapak tangan. Meskipun ALGOL tidak sepopuler FORTRAN dan COBOL, namun program ini masih dipertimbangkan sebagai bahasa yang paling penting pada era-nya dalam hal pengaruhnya terhadap perkembangan bahasa pemrograman yang menjadi penerusnya. Kita maju ke tahun 1960, sebelum
dikenalnya formal syntax, arsitek ALGOL memperkenalkan konsep “block instructions”, yang saat ini kita kenal dengan sebutan prosedur. Konsep ini diperkenalkan oleh Niclaus Wirth dan kemudian konsep ini diimplementasikan ke dalam bahasa pemrograman PASCAL. Wirth juga merupakan salah satu anggota dari komite ALGOL.
ALGOL (Algorithmic Language) didesain oleh komite internasional sebagai bahasa pemrograman yang universal. Komite internasional ini menyelenggarakan konferensi, yang bertempat di Kota Zurich, Switzerland, sebagai upaya formal yang ditempuh untuk mengemukakan isu tentang probabilitas software. Bahasa pemrograman ini pertama kali dikembangan pada akhir tahun 1950-an, dengan debut pertamanya ALGOL 58. Meskipun Algol tidak sepopuler FORTRAN dan COBOL, namun program ini masih dipertimbangkan sebagai bahasa yang paling penting pada era-nya dalam hal pengaruhnya terhadap perkembangan bahasa pemrograman yang menjadi penerusnya. Pada tahun 1960 muncul ALGOL 60. Bahasa pemrogramana ini sangat populer di Eropa pada pertengahan 1960-an, dan pada tahun 1968-an muncul juga ALGOL 68.
Fitur-fitur Algol
Fitur di dalam Algol yang mampu mengelompokan satu himpunan statmen menjadi satu, yang disebut statmen majemuk. Statmen majemuk ini bisa diperlukan sebagai keseluruhan statmen oleh elemen program lain. Bahasa ini yang disebut sebagai salah satu bahasa yang diorientasikan kepada penggunaan prosedur, menyediakan satu alokasi tempat yang dinamis. Dibawah ini fitur-fitur Algol.
Fitur dari bahasa Algol :
1. Menggunakan konsep tipe data secara formal.
2. Nama variable tidak terbatas panjangnya.
3. Index array tidak terbatas.
4.Parameter dipisahkan oleh modenya (in dan out).
5.Index ditempatkan dalam bracket (tanda [ ]).
6.Mendukung compound statement (pernyataan majemuk) (begin…end).
7.Tanda semicolon (titik koma, merupakan pemisah antar statement.
8. Menggunakan operator assignment :=
9. Statement IF mempunyai ELSE-IF (nested-IF) Fitur baru pada ALGOL 60 adalah:
1. Block structure (local scope).
2. 2 model passing parameter (by name dan by value).
3. Rekursi subprogram.
4. Stack-dynamic array.
Kegunaan Algol
Keggunaan algol sendiri untuk merancang fungsi algoritma baik menggunakan komputer maupun tanpa computer. Kemampuan Algol iyalah melaksanakan operasi proses informasi yang umum secara lebih mudah. Sedangkan kelemahannya adalah
bahasa ini sudah jarang dipakai dikarenakan popularitas Algol kalah dengan keturunannya yaitu bahasa Pascal. Dikarenakan bahasa Pascal lebih luas pemakaiannya, akan tetapi prinsip bahasa Algol tetap dipegang teguh oleh bahasa Pascal. Tujuan dari bahasa Algol adalah bahasa ini mendekati notasi matematika, baik untuk mendeskripsikan algoritma,dan harus dapat ditranslasikan ke kode mesin.
Source Code begin
printf(($gl$,"Hello, world!")) end
Kompiler ALGOL 60, ALGOL 68G, Persistent S-algol, MCP Sumber https://en.wikipedia.org/wiki/ALGOL
17. Bahasa Pemrograman Alice
Alice ML adalah bahasa pemrograman yang dirancang oleh Programming Laboratorium Sistem [2] di Saarland University, Saarbrücken, Jerman. Ini adalah dialek Standard ML, ditambah dengan dukungan evaluasi lazy, concurrency (multithreading dan komputasi didistribusikan melalui prosedur panggilan jarak jauh) dan pemrograman kendala.
Alice meluas Standard ML di sejumlah cara yang membedakannya dari pendahulunya. Alice menyediakan fitur concurrency sebagai bagian dari bahasa dasar melalui penggunaan jenis masa depan yang mewakili nilai yang disediakan oleh benang independen eksekusi. Sebuah thread yang menggunakan nilai masa depan akan memblokir pada upaya untuk mengakses nilai sampai benang melakukan telah menyelesaikan perhitungan. Sebuah konsep yang terkait juga disediakan disebut janji, yang memungkinkan thread untuk memberikan nilai masa depan yang akan menghitung untuk thread lain. Masa depan dan janji mengetik variabel yang digunakan untuk menerapkan data-aliran sinkronisasi.
Seperti halnya bahasa fungsional Haskell, Alice juga menyediakan fasilitas untuk memungkinkan menggunakan strategi evaluasi malas dalam program, versus strategi evaluasi bersemangat tradisional Standard ML. Sementara Haskell menggunakan model malas secara default, Alice menggunakan model evaluasi bersemangat secara default, membutuhkan pernyataan pemrograman eksplisit untuk perhitungan untuk mengevaluasi malas.
Pelaksanaan Alice dari Saarland Universitas menggunakan mesin virtual Simple Extensible Abstrak Machine (SEAM). Ini adalah perangkat lunak bebas, dan fitur kompilasi just-in-time untuk bytecode dan kode asli untuk arsitektur x86.
Versi awal dari Alice berlari pada mesin virtual Sistem Programming Mozart (Oz) (VM), yang memungkinkan antarmuka antara Alice dan kode Oz.
Alice remote panggilan prosedur tergantung pada mesin virtual, karena dapat mengirimkan kode yang akan dihitung dari satu komputer ke komputer lain.
Source Code fun fib 0 = 0 | fib 1 = 1
| fib n = fib(n-1) + fib(n-2);
Kompiler Simple Extensible Abstract Machine (SEAM) virtual machine Sumber https://en.wikipedia.org/wiki/Alice_(programming_language)
18. Bahasa Pemrograman Alphard
Alphard adalah bahasa pemrograman yang hampir mirip dengan bahasa pemrograman Pascal untuk abstraksi data dan verifikasi, diusulkan dan dirancang oleh William A. Wulf, Ralph L. London, dan Mary Shaw. Bahasa adalah subyek dari beberapa publikasi penelitian pada akhir tahun 1970, tetapi tidak pernah dilaksanakan.
Fitur inovatif utamanya adalah pengenalan 'bentuk' datatype, yang menggabungkan spesifikasi dan (executable) pelaksanaan prosedural. Hal ini juga mengambil generator dari IPL-V, serta fungsi pemetaan dari Lisp dan membuat kasus umum.
Source Code local x,y,z:complex;
....
X<-x+y*z;
....
Kompiler Alphard Program
Sumber https://en.wikipedia.org/wiki/Alphard_(programming_langu age)
19. Bahasa Pemrograman Amiga E
Amiga E, atau sangat sering hanya E, adalah bahasa pemrograman yang diciptakan oleh Wouter van Oortmerssen pada Amiga. Dia telah beralih untuk mengembangkan bahasa pemrograman SHEEP untuk platform AmigaDE baru dan bahasa CryScript (juga dikenal sebagai DOG) digunakan selama pengembangan video game Far Cry.
Amiga E adalah kombinasi dari banyak fitur dari sejumlah bahasa, tetapi mengikuti bahasa pemrograman C asli paling dekat dalam hal konsep dasar. Manfaat utama Amiga E adalah kompilasi cepat (yang memungkinkan untuk digunakan di tempat bahasa scripting), kode sumber sangat mudah dibaca, sistem jenis fleksibel, sistem modul kuat, penanganan eksepsi (tidak C ++ varian) dan Object oriented programming.
Source Code PROC main()
WriteF('Hello, World!') ENDPROC
Kompiler E Compiler
Sumber https://en.wikipedia.org/wiki/Amiga_E
20. Bahasa Pemrograman AMOS
AMOS BASIC adalah dialek dari bahasa pemrograman BASIC diimplementasikan pada komputer Amiga. AMOS BASIC diterbitkan oleh Europress Software dan awalnya ditulis oleh François lionet dengan Constantin Sotiropoulos.
Kelebihan Amos
AMOS merupakan software statistika yang dikembangkan oleh IBM. Sofware amos memang dikhususkan untuk membantu menguji hipotesis hubungan antar variabel.
Melalui software ini, kita dapat mengetahui tingkat kekuatan hubungan antara variabel baik antara variabel laten maupun dengan variabel manifest. Seberapa signifikan hubungan antara variabel, dan seberapa fit model hipotesis dibandingkan dengan data riil lapangan.
Kelebihan Amos adalah kita tidak memerlukan syntax atau bahasa pemograman yang rumit untuk mengoperasikan software ini. Bagi pemula, atau yang awam dengan bahasa pemograman tentu ini merupakan keuntungan tersendiri. Melalui amos, kita cukup menggambarkan variabel laten dan variabel manifest, lalu menghubungkannya melalui panah-panah yang tersedia.
Kekurangan Amos
Kelebihan amos sekaligus menjadi kekurangan Amos. membuat gambar yang sangat banyak ketika model sudah kompleks, tentu menjadi pekerjaan yang sangat membosankan. Padahal, pekerjaan tersebut dapat dilakukan dengan lebih sederhana melalui bahasa pemograman. Kita tinggal copy syntax dan mengganti beberapa variabel, kemudan running, maka selesailah sekompleks apapun model yang hendak dibuat.
Source Code AMOScmp -D "TGT=mytarget.afg" -D
"REF=myreference.1con" prefix
Kompiler AMOS Compiler
Sumber https://en.wikipedia.org/wiki/AMOS_(programming_langu age)