Bahasa pemrograman Squirrel adalah bahasa pemrograman imperatif / OO tingkat tinggi, yang dirancang untuk menjadi alat scripting yang kuat yang pas di ukuran, bandwidth memori, dan persyaratan real-time aplikasi seperti game. Meskipun Squirrel menawarkan berbagai fitur seperti:
ย ท Open Source zlib / lisensi libpng
ย ท mengetik dinamis
ย ท delegasi
ย ท fungsi orde tinggi
ย ท generator
ย ท benang koperasi (coroutines)
ย ท rekursi ekor
ย ท penanganan eksepsi
ย ท manajemen memori otomatis (CPU semburan gratis, penghitungan campuran pendekatan ref / GC)
ย ท baik compiler dan mesin virtual cocok bersama-sama di sekitar 6K baris kode C ++.
ย ท karakter 16bits opsional string
Squirrel terinspirasi oleh bahasa-bahasa seperti Python, Javascript dan expecially Lua (API ini sangat mirip dan kode tabel didasarkan pada satu Lua).
sintaks tupai mirip dengan C / C ++ / Java dll ... tapi bahasa memiliki sifat yang sangat dinamis seperti python / Lua dll ...
Array lokal = [1,2,3, {a = 10, b = "string"}];
foreach (i, val dalam array)
{
:: Print ("jenis val adalah" + typeof val);
}
Entitas
Apa yang baru dalam rilis ini:.
- sq_getcallee () ditambahkan dalam API
- sq_getfreevariable () juga bekerja untuk penutupan asli.
- optimasi kecil dibuat.
- Beberapa peringatan ketika kompilasi dengan 4.x GCC telah dihapus.
- Beberapa kesalahan dalam dokumentasi yang tetap.
- Sebuah bug ketika menggunakan intengers SQUSEDOUBLE dan 32-bit adalah tetap.
- Sebuah bug saat menjalankan generator dengan closure.call () itu tetap.
Apa yang baru di versi 3.0 RC1:.
- penanganan kesalahan Metamethods ditingkatkan
- & quot; isstatic & quot; parameter ditambahkan ke metamethod _newmember.
- sq_getrefcount () ditambahkan untuk mengembalikan jumlah refences dari C ++.
- Minor bug yang tetap.
Apa yang baru dalam versi 2.2.3:
- tambah sq_getfunctioninfo
- menambahkan waktu kompilasi bendera SQUSEDOUBLE menggunakan mengapung presisi ganda
- menambahkan Slot global yang _floatsize_ int lib dasar untuk mengenali presisi tunggal dan presisi ganda membangun
- sq_wakeupvm sekarang dapat melanjutkan vm dengan pengecualian
- menambahkan sqstd_format
- generator sekarang dapat dipakai dengan memanggil sq_call () atau closure.call ()
- tetap bug di sqstd_printcallstack (thx takayuki_h)
- modulo tetap dengan nol (thx jup)
- enum negatif tetap dan konstanta li>
- Generator kecelakaan bug diperbaiki jika dipanggil sebagai panggilan ekor (thx Mr.Accident)
- tetap beberapa bug minor
Komentar tidak ditemukan