Bayan awalnya dikembangkan untuk mendukung mengembangkan cabang 6.x dari Perl, tetapi telah berkembang menjadi sebuah proyek yang luas yang menyediakan mesin virtual yang mendukung beberapa bahasa pemrograman, kode kompilasi dari satu bahasa ke bahasa yang lain.
ini memungkinkan pengembang untuk mengkompilasi dan kemudian menjalankan bytecode dari satu bahasa ke bahasa lain.
Bahasa saat ini menargetkan burung beo VM:
Rakudo Perl 6
Lua
Winxed
Tcl
JavaScript
Ruby
Skema
PHP
Python
APL
NET bahasa
Apa yang baru di rilis ini:
- Jendela Tetap menghubungkan regresi dari 7.0 0,2 dengan cl.exe.
- rlimit Tetap kompilasi untuk OpenBSD.
- Santai stress test GC umum dan re-menambahkan varian JSON.nqp.
Apa yang baru di versi 7.3.0 / 7.5.0-dev:
- Jendela Tetap menghubungkan regresi dari 7.0.2 dengan cl.exe.
- rlimit Tetap kompilasi untuk OpenBSD.
- Santai stress test GC umum dan re-menambahkan varian JSON.nqp.
Apa yang baru di versi 7.3.0 / 7.4.0-dev:
- Jendela Tetap menghubungkan regresi dari 7.0.2 dengan cl.exe.
- rlimit Tetap kompilasi untuk OpenBSD.
- Santai stress test GC umum dan re-menambahkan varian JSON.nqp.
Apa yang baru di versi 7.3.0:
- Jendela Tetap menghubungkan regresi dari 7.0.2 dengan cl .exe.
- rlimit Tetap kompilasi untuk OpenBSD.
- Santai stress test GC umum dan re-menambahkan varian JSON.nqp.
Apa yang baru di versi 7.0.2 / 7.1.0-dev:
- Ditambahkan INTERPINFO_MAX_GENERATIONS eksperimental api, membuat MAX_GENERATIONS --ccflags disesuaikan, diubah namanya menjadi GC_MAX_GENERATIONS, dan menggunakan nomor yang benar.
- Ditambahkan atribut BERLAKU LAGI untuk semua fungsi usang.
- Tetap crash parser terdeteksi oleh lop kabur Amerika.
- Diganti sebuah op akhir dalam metode PCC oleh op returncc.
- Finish PackFile_ API bantahan dan refactoring. Tidak ada ekspor yang salah lagi.
- diaktifkan kembali tanda tangan NCI berikut: t (cstring), 2 (Integer PMC - & # x3e; pendek),
- 3 (- & # x3e; int), 4 (- & # x3e; panjang). SDL dan Kutukan sekarang dapat digunakan lagi.
- Ditambahkan subset berguna thunks NCI statis untuk inti-thunks.
- Memperbarui thunks ekstra untuk lulus contoh yang paling NCI tanpa libffi, hanya
- 2, 3 dan 4 membutuhkan libffi ketika sedang digunakan destruktif pada Integer PMC.
- Tetap beberapa memblokir ResizablePMCArray (& quot; RPA & quot;). Regresi sambatan dari 6,10, yang pecah perl6
- Ditambahkan RPA sambatan peringatan opsional seperti di perl5, ketika overlarge offset disesuaikan.
- Fixed GC regresi dari 6.11 dengan ResizablePMCArray # 1159 (1,2% lebih lambat).
- Loncat startup peringatan & quot; codeset diketahui ` ', default ke ASCII & quot; ketika nl_langinfo () gagal, dan diam-diam menggunakan ASCII.
Apa yang baru di versi 6.9.0:
- Aktifkan & # x3e; RAM 2GB di darwin juga .
- Fix crash dengan burung beo -d8 DEBUG_IMC dump_instructions
- Fix sprintf lebar untuk string unicode.
- lebar Fix sprintf untuk NaN / Inf / -Inf
- Optimalkan utf8_substr. Jangan gunakan lambat utf8 iterator.
- diregenerasi dan tetap iso_8859_1_typetable. Ditambahkan & # x5c; x2028, & # x5c; x2029 dan & # x5c;. V untuk menjadi cclass baris
- Melindungi callmethod dari obyek kosong, terjawab oleh fixup_subs segera.
- Tambahkan Couroutine ulang dan metode autoreset.
- Tambahkan jejak bendera -t8 bagi negara-negara coroutine
- Dinonaktifkan jejak bendera -T4 dan -t8 dengan --optimize.
- Menyelaraskan pesan penggunaan burung beo
menghitung
Apa yang baru di versi 6.6.0:
- Dioptimalkan metode panggilan atas kepala pada saat kompilasi di pmc2c langsung untuk menghindari run-time overhead. Kurang temp. PMC ini, kurang cabang dan menghindari minimal 2 fungsi C mahal per metode panggilan.
- New arity peringatan & quot; nomor yang salah dari argumen:% d berlalu,% d diharapkan & quot; .
Apa yang baru di versi 6.3.0:
- New hasil benchmark
- tes Tetap untuk cygwin dan cygwin64
- Ditambahkan 2 baru contoh / benchmark / file dan benchmark / run.sh
Apa yang baru di versi 5.9.0:
- Jangan mengeluh tentang karakter utf8 multibyte dibagi oleh batas chunk.
- Tetap readAll SEGV di eof, misalnya saat memanggil readAll dua kali.
- Tetap SEGV ketika .const tidak ditemukan.
- metode Ditambahkan PackfileView-kompatibel untuk EvalPMC.
Apa yang baru di versi 5.0.0:
- ini adalah rilis stabil pertama Parrot dengan benang dukungan (melalui Task PMC).
Apa yang baru dalam versi 4.10.0:
- Ditambahkan PMCNULL memeriksa untuk result_info op
- record Tetap pemisah bug pada IO menangani.
Apa yang baru di versi 4.9.0:
- Simpan pengkodean informasi dalam optimizer imcc, yang perbaikan yang concat op tetapi lebih mungkin banyak kasus dengan non-ascii dikodekan string konstan.
- Tetap ByteBuffer set_string_native, yang menjadi tidak sinkron dengan dua buffer internal.
- Preload Configure langkah saat dipanggil dengan perl -d Configure.pl.
- Jalur dibutuhkan config kunci dari diinstal config hash. Menghemat 6360 byte dari setiap executable diinstal.
- Parrot_get_cpu_type kembali sekarang & quot; tidak diketahui & quot; untuk semua jenis cpu yang tidak diketahui. Pada non-jendela itu dikembalikan sebelum 4.9.0 string null.
Apa yang baru di versi 4.7.0:
- .all_tags Ditambahkan () dan .all_tagged_pmcs () metode untuk PackfileView PMC.
- Beberapa membangun dan standar pengkodean perbaikan.
Apa yang baru di versi 4.5.0:
- .write_bytes Ditambahkan dan .read_bytes metode untuk filehandle dan socket PMC.
- Ditambahkan Parrot_api_set_stdhandle, Parrot_api_new_call_object dan Parrot_api_setup_signature fungsi untuk embedding API.
- Dihapus & quot; dapat & quot; Vtable.
Apa yang baru di versi 4.1.0:
- Bersama perpustakaan dan binari diinstal sekarang dilucuti jika dibangun dengan --optimize pada Cygwin, yang sangat mengurangi ukuran mereka pada disk.
- New eksperimental ops PCC terkait ditambahkan ke inti.
Apa yang baru di versi 4.0.0:
- Inti:
- Beberapa pembersihan ke interp subsistem API
- pembersihan dan dokumentasi tambahan untuk benang hijau dan timer
- Iterator PMC dan keluarga sekarang melaksanakan & quot; iterator & quot; Peran
- Sebuah bug di Parrot_ext_try tetap di mana itu tidak muncul konteks benar
- Dokumentasi:
- Docs untuk semua versi Parrot pernah dirilis sekarang tersedia di http://parrot.github.com
- Pengujian:
- tes Timer PMC dikonversi dari PASM untuk PIR
Apa yang baru dalam versi 3.10.0:
- Tanda Vtable ditambahkan ke Pilih PMC
- The Parrot :: Embed Perl 5 modul telah dihapus dari parrot.git dan sekarang tinggal di https://github.com/parrot/parrot-embed
- Sebuah metode set_random ditambahkan ke Integer PMC, angka jadi acak dapat dihasilkan tanpa perlu memuat dynops matematika
- Sebuah implementasi baru dari benang hijau telah ditambahkan ke Parrot, dalam persiapan untuk sistem hybrid threading kuat. benang hijau saat ini tidak tersedia pada Windows.
Apa yang baru di versi 3.9.0:
- Inti:
- The whiteknight / kill_threads cabang digabung, yang menghilangkan pelaksanaan benang / concurrency tua dan rusak. Lebih baik dan lebih fleksibel primitif concurrency saat ini sedang dikerjakan. Ini juga melibatkan menghapus beberapa sisa-sisa terakhir dari kode perakitan dari Bayan serta menghapus saham dan share_ro vtables.
- random_lib.pir telah dihapus, karena alternatif yang lebih baik sudah ada
- The membekukan dan mencairkan vtables telah dihapus dari default PMC, karena mereka tidak berguna dan menyebabkan sulit menemukan bug.
- A RunCore subroutine profil baru telah ditambahkan. Hal ini dapat diaktifkan dengan argumen baris perintah dari -R subprof. Data yang dihasilkan dapat dianalisis dengan kcachegrind.
- Ditambahkan get_string Vtable untuk FixedIntegerArray dan FixedFloatArray PMC
- Pembaruan () metode ditambahkan ke Hash PMC, yang update satu Hash dengan isi yang lain. kecepatan ini waktu Rakudo / NQP startup.
- Bahasa:
- Updated snapshot ke versi 1.3.0
- Ditambahkan tidur builtin
- Modifier 'multi-' memungkinkan beberapa fungsi lebih multi
- Community:
- repo baru untuk Parrot Alternatif Compiler Toolkit, ulang pelaksanaan PCT di Winxed: https://github.com/parrot/PACT
- Dokumentasi:
- Kami sedang dalam proses untuk bermigrasi wiki Trac kami di http://trac.parrot.org/ ke Github di https://github.com/parrot/parrot/wiki
- dokumentasi Packfile PMC telah diupdate
- Pengujian:
- Pilih tes PMC ditingkatkan untuk menyampaikan non-Linuxy platform
Apa yang baru di versi 3.6.0:
- Inti:
- Class.add_vtable_override sekarang memungkinkan Anda untuk menimpa menimpa
- Integer, mengapung dan string sekarang dapat disimpan dalam variabel leksikal. Sebelumnya, hanya PMC dapat disimpan dalam lexicals.
- VTABLE_substr telah dihapus. VTABLE_substr_str telah diubah namanya menjadi VTABLE_substr
- Ditambahkan jenis PackfileView PMC baru, pengganti dimaksudkan untuk Eval PMC yang usang.
- The is_integer vtable pada String PMC sekarang bekerja untuk semua encoding tali.
- Unicode pesan kesalahan pada Win32 sekarang bekerja dengan benar.
- Kebocoran memori di IMCC tetap.
- Bahasa:
- The snaphost dari Winxed disertakan dengan burung beo telah diupdate ke versi 1.0.0
- Winxed telah bermigrasi ke Github: https://github.com/NotFound/winxed
Apa yang baru di versi 3.5.0:
- Inti:
- Parrot_PMC_destroy, Parrot_PMC_mark dan Parrot_PMC_invoke telah dihapus dari ekstensi API publik.
- MASA LALU sekarang memiliki jenis node LALU :: Stmt, mendukung register sementara dapat digunakan kembali.
- cakupan Uji embedding dan memperluas antarmuka sekarang setidaknya 95%.
- Sebuah snapshot dari Winxed sekarang termasuk dalam burung beo inti untuk memfasilitasi menulis perangkat inti Bayan dari bahasa tingkat tinggi dari PIR.
- Bahasa:
- Peningkatan waktu kompilasi lingkup pencarian.
- Ditambahkan 'menggunakan namespace' pernyataan.
- kelas Compiler dan fungsi sekarang tinggal di Winxed;. Namespace Compiler
- Pengujian:
- The Parrot test suite harness sekarang mengerti variabel lingkungan HARNESS_TIMER. Pengaturan ke nilai sebenarnya akan menunjukkan hasil waktu untuk uji coba.
- tes IPv6 sekarang paralel menguji ramah.
Apa yang baru di versi 3.4.0:
- Inti:
- Generasi Mark dan Sapu kolektor sampah adalah default yang baru.
- The --gc-pembibitan-ukuran argumen baris perintah ditambahkan.
- Bayan sekarang mendapat entropi dari OS yang mendasari.
- The NCI subsistem sekarang mendukung 8, 16, 32 dan 64 bit integer.
- The NCI subsistem sekarang mendukung & quot; lama & quot; dan & quot; panjang ganda & quot; tanda tangan. Tidak semua platform / kompiler mendukung jenis non-standar ini, sehingga para pengembang diperingatkan untuk mencatat bahwa menggunakan mereka mengurangi portabilitas.
- Banyak fungsi lebih OpenGL di binding Bayan OpenGL yang tersedia, yang diperlukan tanda tangan di atas.
- melekatkan fungsi api terkait Bytecode pindah ke src / embed / bytecode.c.
- Bahasa:
- Gunakan 'menggunakan extern' untuk impor modul.
- Peningkatan stadium 0 prefix ++ dan -. Operator
- Izinkan 'nol' di operator kondisional.
- Beberapa contoh diperbarui.
- Community:
- Google Summer of Code periode Bonding berjalan dengan baik. Siswa sebagian besar dilakukan dengan kelas mereka dan banyak kode akan mengalir segera.
- Dokumentasi
- Lebih perkenalan PCT tersedia di:. Http://github.com/benabik/cish
Apa yang baru di versi 3.3.0:
- Inti:
- isa The dan isa_pmc vtables sekarang dapat diganti dari PIR
- IMCC memiliki antarmuka eksternal baru ditingkatkan
- Sebuah IMCCompiler PMC baru menambahkan prototipe fungsi PDD31-sama untuk PIR dan PASM kompiler
- --with-llvm Opsi baru untuk Configure.pl, yang akan menghubungkan ke LLVM jika tersedia
- Community:
- Bayan Virtual Machine diterima ke dalam Google Summer of Code 2011
- Ekosistem:
- Rosella menambahkan stabil & quot; Event & quot; perpustakaan untuk menerapkan mempublikasikan / berlangganan mekanisme
- Pengujian:
- cakupan uji subsistem extend_vtable itu sangat meningkat
Apa yang baru di versi 3.2.0:
- Dukungan penuh untuk nama file Unicode di Linux dan Win32.
- Opsi konfigurasi --cxx hilang.
- New Generasi GC dilaksanakan. Untuk mengaktifkannya menjalankan Configure.pl --gc = gram.
- Sekarang definisi op yang semantik diurai. Ini membuka kemungkinan untuk optimasi masa depan beo inti.
- Sebuah pernyataan mengkonversi '.param' PIR systax.
- Sebuah PMC diimplementasikan untuk akses penyangga tingkat rendah yang memisahkan representasi dari pointer.
- Dukungan ditambahkan untuk 'panjang ganda', 'lama', dan 64-bit untuk StructView.
- Dalam math.h adalah alat yang tersedia untuk Inf / NaN.
- Signature PMC digunakan meluas.
Apa yang baru di versi 3.1.0:
- PMC Exception sekarang subclassable dari PIR
- IPv6 sekarang didukung dan diuji
- fungsi Ditambahkan Parrot_ext_try untuk memperpanjang API (percobaan), untuk memungkinkan pelaksanaan mencoba .. menangkap construcs di C ekstensi.
- Kami sekarang memiliki perpustakaan YAML disebut YAML :: kecil, pelabuhan YAML :: kecil dari Perl 5
- Usang / fitur eksperimental sekarang disimpan di api.yaml dalam format yang mudah-to-parse, yang akan memungkinkan alat otomatis akses mudah ke data ini. Ini menggantikan DEPRECATED.pod, yang tidak ada lagi.
- Peningkatan GC latency
- Peningkatan kinerja GC pada sistem memori rendah
- Peningkatan packfile kompleksitas penjelasan lookup
- Penghapusan kode yang tidak terpakai dan kode berdasarkan SVN
Apa yang baru di versi 3.0.0:
- Inti:
- Sebuah embedding API baru tersedia di & quot; burung beo / api.h & quot; dan didokumentasikan dalam dokumen / pdd / pdd10_embedding.pod.
- Packfile PMC yang refactored dan sekarang dapat digunakan untuk menghasilkan bytecode runnable.
- Packfile kode manipulasi sekarang melempar pengecualian ramah-embedder daripada mencetak rincian kesalahan langsung ke stderr.
- dukungan Unicode file IO, variabel lingkungan, nama program dan parameter baris perintah ditingkatkan.
- Sebuah gdb eksperimental cantik-printer di tools / dev untuk burung beo string dan PMC sekarang tersedia. (Gdb 7.2 atau yang lebih baru dan Python yang diperlukan)
- c2str.pl dan pmc2c.pl perbaikan menghasilkan noticably lebih cepat membangun.
- Bug di Digest :: perpustakaan SHA256 dan terkait bit ops dinamis yang ditetapkan oleh mahasiswa GCI Nolan Lum. Keduanya kini bekerja dengan benar pada 32 dan 64 bit sistem.
- Community:
- pohon-optimasi oleh mahasiswa GSoC Tyler L. Curtis bergabung sarang dan sekarang tinggal di http://github.com/parrot/tree-optimization.
- bulu sekarang tinggal di http://github.com/parrot/plumage dan diinstal.
- Natal berjalan seperti dijadwalkan. Tim Bayan tidak mengambil kredit untuk acara ini.
- Dokumentasi:
- generasi dokumentasi HTML telah ditulis ulang dan sangat disederhanakan.
- Kami telah meningkatkan dokumentasi di docs / proyek / git_workflow.pod tentang menjaga garpu dari parrot.git sinkron.
- Translations dari README kami dalam berbagai bahasa sekarang di direktori docs / terjemahan, berkat siswa Kode-In Google.
- Pengujian:
- Cara yang lebih baik untuk menulis & quot; todo & quot; tes dengan Uji Parrot :: More dilaksanakan oleh mahasiswa GCI Fernando Brito.
- kenaikan besar dalam cakupan tes banyak PMC inti, PMC dinamis dan opcodes dinamis dihasilkan dari GCI dan siswa Interpid itu menarik.
- Jonathan & quot; Duke & quot; Leto mengatur Debian Linux x86_64 dan perokok sparc32 di GCC Kompilasi Pertanian, yang secara terus menerus menyampaikan laporan asap dengan berbagai pilihan konfigurasi dan compiler. Terima kasih, GCC!
- memeriksa Makefile ketergantungan sekarang otomatis diuji, sehingga membangun paralel lebih handal.
- tes Cakupan ditingkatkan untuk platform dengan dan tanpa devel :: Penutup.
Apa yang baru dalam versi 2.11.0:
- Just In Time generasi bingkai panggilan asli menggunakan LibFFI.
- PIR op find_codepoint tidak lagi eksperimental, sekarang didukung.
- Beberapa fungsi publik di libparrot telah dibesarkan untuk konvensi penamaan standar.
- Peningkatan pelaksanaan terkait-daftar di GC.
- set_addr opcode digantikan dengan opcode set_label baru di perpustakaan inti.
- Dihapus usang CodeString PMC.
- Ditambahkan dekat, is_closed, membaca, metode readline untuk Socket.
- Ditambahkan eksperimental Jenis MappedByteArray PMC.
- Ditambahkan Parrot_warn_experimental, untuk memperingatkan pengguna tentang fitur eksperimental.
- Kode untuk executable frontend pindah dari src / ke frontend /.
- Dukungan untuk chunked terima di LWP perpustakaan.
- Ditambahkan & quot; QuickCover & quot; membuat sasaran.
Apa yang baru dalam versi 2.10.0:
- Inti:
- Kami di github sekarang! https://github.com/parrot/parrot
- Configure, membangun dan menguji subsistem dibuat Git-sadar
- kunci parrot_config New 'osvers' yang berisi informasi Versi Sistem Operasi
- Diperbarui ke terbaru NQP-rx
- Pengecualian yang tepat sekarang dilemparkan pada IO kesalahan membaca
- optimasi Garbage Collector dan perbaikan kebocoran memori
- Usang ops charset dihapus
- Konfigurasi sistem belajar untuk mendeteksi IPv6
- The mk_language_shell dan create_language script belum porting ke Git.
- Dokumentasi:
- Cara Menggunakan Git untuk bekerja pada Bayan
- Git Terminologi
- Pengujian:
- Peningkatan cakupan pada:. String, FixedBooleanArray, PMCProxy, LexPad
- Community:
- Macports portfile diperbarui untuk 2.6.0
- Sebuah paket Fedora untuk PL / Bayan (postgresql-plparrot) diciptakan Paket ini memungkinkan Anda untuk menulis prosedur yang tersimpan untuk PostgreSQL di PIR atau Rakudo Perl 6 http://pl.parrot.org
- Bayan Foundation bekerja sama dengan The Perl Foundation dan mengambil bagian dalam Google Code-Pada tahun 2010.
Apa yang baru di versi 2.9.0:
- Inti:
- Bayan dan Rakudo ini membangun dan tes sekarang dapat dijalankan di bawah RunCore profiling
- IPv6 sekarang terdeteksi, meletakkan dasar untuk perbaikan jaringan masa depan
- mk_language_shell.pl dan create_language.pl tidak lagi memerlukan burung beo diinstal
- metode 'terbalik' String PMC ini sekarang lebih cepat dan mendukung semua encoding
- Perbaikan dan penyederhanaan dalam pengolahan tali internal yang
- Ditambahkan API untuk menambahkan STRINGd ke gc akar set
- Mempercepat ord, substr, indeks dan perbandingan string opcodes
- Pengujian:
- & quot; membuat asap & quot; mendukung pengujian paralel dengan menghormati TEST_JOBS
- tes Ditambahkan untuk Socket PMC, StringBuilder PMC, ByteBuffer PMC, mk_language_shell.pl, create_language.pl
- Tetap & quot; Configure.pl & quot; tes tentang hilang
- Bayan dan Rakudo Perl 6 sekarang memiliki akses ke GCC Kompilasi Pertanian
- Pengujian di Darwin / PPC
- Git Migrasi:
- Sebagian besar alat pengembang sudah dikirimkan ke Git
- Mayoritas docs pengembang telah ditulis untuk Git
- Platform:
- Bayan sekarang dapat dibangun di atas Minix
Apa yang baru di versi 2.8.0:
- Inti:
- inline hashing dan perbandingan fungsi
- alokasi memori Hash pindah dari sistem malloc malas dialokasikan
- Dihindari terbatas menangkap pengecualian sementara sekarat dari pengecualian
- Beberapa perbaikan svn
- Ditambahkan cek untuk entri vtable duplikat di PMC
- Bangunan Bayan dengan Perl 5.12 dan gcc-4.5 / g ++ - 4.5
- Dieliminasi cruft tersisa setelah dynops_mapping
- Peningkatan charset dan tali encoding
- Organisasi yang lebih baik dari program dengan reposisi itu ke & quot; alat / membangun & quot; dan & quot; alat / release & quot;
- Diimplementasikan Exception clone fungsi vtable
- Ditambahkan fungsi eksperimental Parrot_getpid dan metode getpid
- - baris perintah gc-threshold argumen menambahkan, yang mengontrol% dari memori terbuang oleh GC
- Ditutup banyak tiket
- Pengujian:
- Ditambahkan tes pmc lebih inti
- Mengatur kembali beberapa tes dengan cakupan C
- Kami sekarang memiliki Smolder kembali, di http://smolder.parrot.org. Menyampaikan laporan dengan & quot; membuat asap & quot;
- pelaksanaan skip_all di Uji Parrot :: More selesai
- GitMigration:
- Siapkan situs tes untuk github trac Plugin di http://mksig.org/trac/
- Kode Trac Plugin di github pada http://github.com/cotto/github-trac
- Bayan sekarang dicerminkan pada github di http://github.com/parrot/parrot
- Compiler:
- Tetap masalah dengan imcc HLL dalam perbedaan load_bytecode antara memuat pbc dan menyusun pir
Apa yang baru di versi 2.7.0:
- Inti:
- pembersihan di packfile dan freeze / thaw penanganan
- Hash optimasi yang meningkatkan HLL startup dan waktu berjalan
- Seperti biasa, banyak perbaikan bug dan optimasi lainnya
- Runtime:
- Beberapa pembersihan runtime library
- Pengujian:
- Ditambahkan lebih banyak tes untuk meningkatkan cakupan
- tes codingstd Baru untuk dokumentasi dalam file .pmc
- Dokumentasi:
- dokumentasi Ditambahkan ke .pmc file (beberapa masih hilang tapi header di tempat)
- perbaikan dokumentasi Umum dan membawa up-to-date
- NQP-rx:
- versi Updated termasuk dari http://github.com/perl6/nqp-rx termasuk peningkatan kecepatan
Apa yang baru di versi 2.5.0:
- Inti:
- Ditambahkan ByteBuffer PMC untuk memungkinkan manipulasi byte langsung
- Modified beberapa PMC fungsi vtable untuk mengurangi kompleksitas, menyederhanakan cakupan.
- Modified MASA LALU untuk menghasilkan konstanta PASM simbolik dalam output PIR.
- STRING Umum API pembersihan
- Peningkatan cakupan uji inti PMC
- Tetap up 'exit' opcode, tambah CONTROL_EXIT jenis pengecualian.
- 'membeberkan' Eksperimental opcode berganti nama menjadi 'menyelesaikan'
- NQP-rx:
- Ditambahkan dukungan yang tepat untuk multisubs dan multimethods
- Tetap sigspace penanganan ** quantifier di regexes
- Tambah & # x5c; e string
- Ditambahkan penggunaan daftar inversi untuk daftar charclass di regexes
- Platform:
- EPEL (Ekstra Paket untuk Enterprise Linux) paket untuk RHEL6.beta tersedia.
Apa yang baru di versi 1.8.0:
- Fungsi:
- filehandle PMC sekarang menghadapkan kode keluar dari proses anak yang dijalankan sebagai pipa.
- dukungan eksperimental untuk meng-override Vtable memohon pada objek PIR ditambahkan.
- Metode 'Jenis' ditambahkan ke PackfileAnnotations PMC.
- The internal dari burung beo memanggil konvensi, PCC, yang ulang. Semua jalur panggilan sekarang menggunakan benda CallSignature untuk melewati argumen dan nilai-nilai kembali.
- baru API-fungsi 'Parrot_ext_call' ditambahkan untuk menelepon ke C-tanah.
- The berukuran tetap pengalokasi ditingkatkan.
- File dipasang oleh 'make install-dev' sekarang ditutupi oleh 'make install' juga.
- The ops eksperimental 'mengambil' dan 'menghidupkan' ditambahkan.
- Opsi-aku ke perintah 'Bayan' sekarang prepends item ke path pencarian.
- Konteks struct diganti dengan atribut auto (context_auto_attrs cabang).
- Gunakan OSNAME ditentukan di auto :: lengkungan di langkah konfigurasi berikutnya (convert_OSNAME cabang).
- Dieliminasi ketergantungan pada Perl 5 '% Config' di auto :: Format (auto_format_no_Config cabang).
- MultiSub PMC sekarang stringify untuk nama calon pertama mereka, bukan jumlah calon.
- Deteksi Platform pada awal proses konfigurasi ditingkatkan.
- Metode 'lineof' pada objek CodeString sekarang precomputes baris informasi nomor untuk lebih efisien pada string variabel-lebar dikodekan.
- P6object sekarang mendukung .who dan .Dimana metode pada protoobjects.
- Platform:
- Perbaikan untuk pelabuhan Parrot untuk RTEMS diterapkan.
- Pada NetBSD, libs bersama sekarang digunakan.
- Kinerja:
- Gunakan pengalokasi berukuran tetap dalam Konteks dan CallSignature PMC.
- Banyak perbaikan kecepatan kecil.
- Dokumentasi:
- Arti dari 'p' berarti di NCI panggilan fungsi tanda tangan diklarifikasi.
- Tools:
- The rintisan untuk bahasa baru, seperti yang dibuat oleh mk_language_shell.pl, sekarang bergantung pada alat berbasis PIR, yang menggantikan alat berbasis 5 Perl.
- Perpustakaan Configure.pir ditambahkan.
- distutils.pir perpustakaan telah ditambahkan.
Apa yang baru di versi 1.5.0:
- Inti:
- Dihapus beberapa fungsi dan fitur usang
- Dihapus BSR, JSR, branch_cs, dan opcodes ret
- Dihapus sistem global tumpukan
- OPS Berubah format file untuk memasukkan pembukaan eksplisit
- Berubah semua & quot; baru 'Iterator' & quot; instruksi ke instruksi 'iter'
- Dihapus pilihan Configure.pl untuk menentukan core GC non-bekerja
- Dihapus kode unexecuting seperti yang ditemukan oleh Coverity
- Perbaikan Parrot Debugger
- Ditambahkan eksperimental struktur berukuran tetap pengalokasi ke GC
- Ditambahkan eksperimental alokasi arena malas untuk GC
- Dihapus mati PASM1 compiler objek
- hash Refactored, kunci, dan iterator
- Tambah & quot; corevm & quot; membuat target untuk membangun Bayan tanpa semua perpustakaan pendukung
- Dihapus Jenis sembarang PMC dan ditambahkan dalam & quot; rand & quot; dynop
- Optimasi dan Perbaikan generator NCI dunk
- New menyertakan file libpaths.pasm
- Compiler:
- Beberapa .local dengan nama yang sama dan jenis yang berbeda sekarang kesalahan pada IMCC.
- Platform:
- Peningkatan dukungan untuk mendeteksi Fink dan Macports
- Updated direktori pencarian untuk perpustakaan
- Dokumentasi:
- & quot; Bayan Pengembang Panduan: PIR & quot; dirilis ke penerbit dan tersedia untuk membeli
- Peningkatan dokumentasi tentang burung beo Debugger
- Update PGE Dokumentasi
- Miscellaneous:
- tes Ditambahkan
- Perbaikan kode, dokumentasi, dan standar
Apa yang baru di versi 1.4.0:
- Inti:
- Key dan Iterator refactor
- perbaikan pbc_to_exe dihasilkan kecepatan kode Major
- New & quot; Tak Terbatas Memory & quot; GC inti untuk tujuan demonstrasi
- RunCore gc_debug dan terkait GC perbaikan Heisenbug
- Penghapusan ekspansi variabel di parrot_config
- argumen CLI diproses sebagai Unicode secara default
- optimasi Substansial di NCI
- Bayan dibangun di atas Win64
- kilatan dapat menggunakan jenis asli sebagai kunci dan nilai-nilai
- Tetap diinstal pbc_to_exe
- Penyederhanaan generasi kode PMC
- Peningkatan GC enkapsulasi dan dokumentasi API
- Dokumentasi:
- Daftar calon embedding API (docs / embed.pod)
- buku PIR dikirim ke penerbit
- Pengujian:
- Beberapa konversi uji Perl untuk PIR murni.
- C lekukan coding standar
- Peningkatan cakupan uji contoh kode
- deprecations:
- Penghapusan aturan PGE: & # x3c; nol & # x3e; & # X3c; gagal & # x3e; & # X3c; sp & # x3e; & # X3c; lt & # x3e; & # X3c; gt & # x3e; & # X3c; dot & # x3e;
- Penghapusan metode PGE: .text .item .result_object
- Penghentian paling dynops
- Miscellaneous:
- Awal OpenGL :: perpustakaan Math; binding OpenGL dan perpustakaan dianggap eksperimental
- lokalisasi dan consting perbaikan
- Banyak memori dan terkait benang kebocoran terpasang
peningkatan tes
Komentar tidak ditemukan