Saya pikir "bahasa scripting" adalah kata yang mengerikan, yang sangat ketinggalan zaman atau paling sesuai dengan kelas bahasa domain tertentu. Guru Anda hanya menyelaraskan semua yang jelas-jelas tidak ia pahami tentang poros kejahatan.
Perbedaan yang masuk akal untuk dibuat adalah bahwa antara bahasa tingkat tinggi dan bahasa tingkat rendah, atau antara yang diketik secara statis dan dinamis, yang benar-benar ortogonal.
Assembler adalah level rendah yang diketik secara dinamis (jika berbicara tentang tipe masuk akal sama sekali), C adalah level rendah yang diketik secara statis, Ruby adalah tingkat tinggi yang diketik secara dinamis, Haskell adalah tingkat tinggi yang diketik secara statis. Java bukan tingkat tinggi atau rendah yang diketik secara statis, C ++ adalah tingkat tinggi dan rendah yang diketik secara statis. Dan seterusnya.
Diskusi hanya bisa, paradigma mana yang lebih cocok untuk programmer pemula.
Saya cukup yakin pemrograman tingkat rendah mungkin bukan satu. Mungkin, beberapa waktu yang lalu di awal 90-an, ketika Anda benar-benar dapat menghasilkan hasil yang menarik dalam waktu yang wajar dengannya.
Tetapi pemrograman didorong oleh hasrat. Gairah dipupuk oleh hadiah. Oleh karena itu, pemrogram entry level harus mulai dengan alat yang bermanfaat. Alat tingkat rendah tidak lagi bermanfaat, karena ada lautan alat tingkat tinggi yang memberi Anda hasil yang sama dalam sepersekian waktu.
Pemikiran manusia itu abstrak. Ketika kita belajar untuk memahami dunia, kita melakukannya dengan abstraksi berbutir kasar dan kita memerinci sesuai kebutuhan.
Agar seorang anak dapat memahami lingkungannya, Anda tidak akan mengajarkan matematika, lalu fisika, kimia, biologi, lalu sejarah, sosiologi, dan filsafat. Anda memberikannya sebuah model dunia yang sangat sederhana untuk diatasi dan akan, dengan sendirinya lama untuk melewatinya, tanpa akhir mengajukan pertanyaan kepada Anda ketika muda dan sepenuhnya meniadakan otoritas Anda nanti.
Itulah cara kami berpikir. Otak manusia hanya dapat memproses jumlah "unit" informasi yang terbatas, tetapi tingkat keabstrakan tidak banyak berarti dalam kuantisasi informasi. Misalnya: membaca ungkapan '34 * 75 'kepada kami lebih mudah bagi kami daripada menghitungnya, sedangkan untuk komputer sebaliknya. Untuk mengenali (dan dengan demikian abstrak) sekelompok piksel hitam menjadi garis berlekuk-lekuk, yang kemudian dapat dikenali (dan dengan demikian lagi diabstraksikan) menjadi digit individu adalah sejumlah besar pekerjaan.
Nenek saya mengerti ide membuka file. Namun dia tidak memiliki pemahaman di bawah level itu. Dan sejujurnya, jika dia harus belajar ini dengan terlebih dahulu mempelajari cara kerja internal perangkat keras dan sistem operasi dan apa yang tidak, dia tidak akan pernah sampai di sana.
Ada banyak orang di luar sana, yang terlalu rumit, karena mereka tidak pernah diajarkan untuk berpikir dalam hal solusi yang jelas, ringkas dan dengan demikian elegan, tetapi menghabiskan terlalu banyak waktu untuk repot-repot dengan rincian tingkat rendah yang dapat dipertukarkan dan memecahkan masalah terhadap mereka. Mengajar orang untuk berpikir seperti komputer adalah pendekatan terburuk untuk pemrograman.
Nilai pemrograman terletak pada menemukan solusi untuk suatu masalah. Mengekspresikannya sebagai kode benar-benar lebih membosankan, tugas mekanis dan harus dilakukan dengan alat apa pun yang cocok.
Oh, dan jangan khawatir tentang tidak mengerti pointer. Saya memiliki masalah yang sama pada usia yang sama. Masalahnya di sini juga adalah kurangnya abstraksi. Klasik Anda belajar tentang petunjuk dari beberapa buku C dan sementara Anda berjuang untuk memahaminya, ini sejalan dengan alokasi memori dan dengan demikian dengan memori tumpukan dan tumpukan dan sebagainya. Konsep abstrak di balik pointer adalah tipuan. Variabel, yang menyimpan indeks ke dalam array tertentu hanya itu (sebenarnya itu benar-benar sama di C, di mana array spesifik adalah ruang alamat Anda), dan Anda tidak perlu aritmatika penunjuk untuk ini.
Ini hanya dimaksudkan untuk menggambarkan, bahwa memilih abstraksi tingkat tinggi membuat banyak hal lebih mudah untuk dipahami.
EDIT: dan ketika harus mengetik, saya lebih suka bahasa yang diketik secara statis. Dan saya pikir pemrogram entry level harus dengan jelas memahami konsep tipe (yang abstrak).