InggrisPerancisSpanyol

favorit OnWorks

perlbs2000 - Online di Cloud

Jalankan perlbs2000 di penyedia hosting gratis OnWorks melalui Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

Ini adalah perintah perlbs2000 yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa stasiun kerja online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

PROGRAM:

NAMA


perlbs2000 - membangun dan menginstal Perl untuk BS2000.

Dokumen ini perlu diperbarui, tetapi kami tidak tahu apa yang harus dikatakan. Tolong email
komentar untuk [email dilindungi] <mailto:[email dilindungi]>.

RINGKASAN


Dokumen ini akan membantu Anda Mengonfigurasi, membangun, menguji, dan menginstal Perl pada BS2000 di POSIX
subsistem.

DESKRIPSI


Ini adalah perl porting untuk subsistem POSIX di BS2000 VERSION OSD V3.1A atau yang lebih baru. Dia
mungkin bekerja pada versi lain, tetapi kami mulai mem-porting dan mengujinya dengan 3.1A dan saat ini
saat ini menggunakan Versi V4.0A.

Anda mungkin memerlukan program GNU berikut untuk menginstal Perl:

gzip on BS2000
Kami menggunakan versi 1.2.4, yang dapat diinstal langsung dengan satu kegagalan selama
'melakukan pemeriksaan'.

banteng on BS2000
Yacc yang datang dengan BS2000 POSIX tidak berfungsi untuk kami. Jadi kami harus menggunakan bison. Kita harus
buat beberapa perubahan pada Perl untuk menggunakan parser bison murni (reentrant). Kami menggunakan
versi 1.25, tetapi kami harus menambahkan beberapa perubahan karena EBCDIC. Lihat di bawah untuk lebih jelasnya
tentang yacc.

Membongkar Perl Distribusi on BS2000
Untuk mengekstrak arsip tar ASCII pada BS2000 POSIX, Anda memerlukan sistem file ASCII (kami menggunakan:
mountpoint /usr/local/ascii untuk ini). Sekarang Anda mengekstrak arsip di ASCII
sistem file tanpa konversi I/O:

cd /usr/local/ascii export IO_CONVERSION=NO gunzip < /usr/local/src/perl.tar.gz | pax -r

Anda dapat mengabaikan pesan kesalahan untuk elemen pertama arsip (ini tidak terlihat
seperti arsip tar / melompat ke file berikutnya ...), hanya direktori yang akan
dibuat secara otomatis pula.

Setelah mengekstrak arsip, Anda menyalin seluruh pohon direktori ke sistem file EBCDIC Anda.
Kredensial mikro waktu Anda menggunakan I/O-konversi:

cd /usr/local/src IO_CONVERSION=YA cp -r /usr/local/ascii/perl5.005_02 ./

kompilasi Perl on BS2000
Ada file "petunjuk" untuk BS2000 yang disebut petunjuk.posix-bc (karena posix-bc adalah nama OS
diberikan oleh `uname`) yang menentukan nilai yang benar untuk sebagian besar hal. Masalah utamanya adalah
(tentu saja) set karakter EBCDIC. Kami memiliki versi EBCDIC Jerman.

Karena masalah kami dengan yacc asli, kami menggunakan bison GNU untuk menghasilkan yang murni
(= reentrant) parser untuk perly.y. Jadi yacc kami benar-benar skrip berikut:

-----8<-----/usr/local/bin/yacc-----8<----- #! /usr/bin/sh

#Bison sebagai reentrant yacc :

# simpan parameter: params="" while [[ $# -gt 1 ]]; melakukan
params="$params $1"
shift selesai

# tambahkan tanda %pure_parser:

tmpfile=/tmp/bison.$$.y echo %pure_parser > $tmpfile cat $1 >> $tmpfile

#panggil bison:

echo "/usr/local/bin/bison --yacc $params $1\t\t\t(Parser Murni)" /usr/local/bin/bison
--yacc $params $tmpfile

# membersihkan:

rm -f $tmpfile -----8<----------8<-----

Kami masih menggunakan yacc normal untuk a2p.y!!! Kami membuat softlink yang disebut byacc to
membedakan antara dua versi:

ln -s /usr/bin/yacc /usr/local/bin/byacc

Kami membangun perl menggunakan GNU make. Kami mencoba merek asli sekali dan berhasil juga.

pengujian Perl on BS2000
Kami masih mendapatkan beberapa kesalahan selama "membuat tes". Beberapa di antaranya adalah hasil dari penggunaan bison.
Cetakan bison pengurai kesalahan alih-alih sintaksis kesalahan, jadi kita mungkin mengabaikannya. Pengikut
list menunjukkan kesalahan kami, hasil Anda mungkin berbeda:

op/numconvert.......pengujian GAGAL 1409-1440 op/regexp...........pengujian GAGAL 483, 496
op/regexp_noamp.....Ujian GAGAL 483, 496 pragma/kelebihan beban.....Ujian GAGAL 152-153,
170-171 pragma/peringatan.....Ujian GAGAL 14, 82, 129, 155, 192, 205, 207
lib/bigfloat........pengujian GAGAL 351-352, 355 lib/bigfltpm.........pengujian GAGAL 354-355,
358 lib/kompleks.........pengujian GAGAL 267, 487 lib/dumper...........pengujian GAGAL 43, 45
Gagal 11/231 skrip pengujian, 95.24% oke. 57/10595 subtes gagal, 99.46% oke.

Instalasi Perl on BS2000
Kami tidak memiliki nroff pada BS2000 POSIX (belum), jadi kami mengabaikan kesalahan apa pun saat menginstal
dokumentasi.

Menggunakan Perl in itu Posix-Shell of BS2000
BS2000 POSIX tidak mendukung notasi Shebang ("#!/usr/local/bin/perl"), jadi Anda memiliki
untuk menggunakan baris berikut sebagai gantinya:

: # gunakan perl
eval 'exec /usr/local/bin/perl -S $0 ${1+"$@"}'
jika $running_under_some_shell;

Menggunakan Perl in "warga asli" BS2000
Kami belum memiliki banyak pengalaman dengan ini, tetapi coba yang berikut ini:

Salin Perl Anda yang dapat dieksekusi ke BS2000 LLM menggunakan bs2cp:

"bs2cp /usr/local/bin/perl 'bs2:perl(perl,l)'"

Sekarang Anda dapat memulainya dengan perintah (SDF) berikut:

"/START-PROG FROM-FILE=*MODULE(PERL,PERL),PROG-MODE=*ANY,RUN-MODE=*ADV"

Pertama, Anda mendapatkan prompt baris perintah BS2000 ('*'). Di sini Anda dapat memasukkan parameter Anda,
misalnya "-e 'print "Hello World!\\n";'" (perhatikan garis miring terbalik ganda!) atau "-w" dan nama
skrip Perl Anda. Nama file yang dimulai dengan "/" dicari di sistem file Posix,
lainnya dicari di sistem file BS2000. Anda bahkan dapat menggunakan wildcard jika Anda memasukkan "%"
di depan nama file Anda (mis. "-w checkfiles.pl %*.c"). Baca manual C/C++ Anda untuk
kemungkinan tambahan dari commandline prompt (cari PARAMETER-PROMPTING).

Mengambang titik kelainan on BS2000
Tampaknya ada bug dalam implementasi floating point pada sistem BS2000 POSIX
sedemikian rupa sehingga memanggil ke dalam() pada produk suatu bilangan dan bilangan yang besarnya kecil bukanlah
sama seperti memanggil ke dalam() pada hasil bagi bilangan itu dan bilangan besarnya yang besar. Untuk
contoh, dalam kode Perl berikut:

$x saya = 100000.0;
$y saya = int($x * 1e-5) * 1e5; # '0'
$z saya = int($x / 1e+5) * 1e5; # '100000'
print "\$y adalah $y dan \$z adalah $z\n"; # $y adalah 0 dan $z adalah 100000

Meskipun orang akan mengharapkan jumlah $y dan $z sama dan sama dengan 100000 mereka
akan berbeda dan sebaliknya akan menjadi 0 dan 100000 masing-masing.

Menggunakan Perlio dan berbeda pengkodean on ASCII dan EBCDIC skor
Sejak versi 5.8 Perl menggunakan PerlIO baru pada BS2000. Ini memungkinkan Anda menggunakan yang berbeda
pengkodean per saluran IO. Misalnya Anda dapat menggunakan

gunakan Enkode;
open($f, ">:encoding(ascii)", "test.ascii");
print $f "Halo Dunia!\n";
open($f, ">:encoding(posix-bc)", "test.ebcdic");
print $f "Halo Dunia!\n";
open($f, ">:encoding(latin1)", "test.latin1");
print $f "Halo Dunia!\n";
open($f, ">:encoding(utf8)", "test.utf8");
print $f "Halo Dunia!\n";

untuk mendapatkan dua file yang berisi "Hello World!\n" dalam ASCII, EBCDIC, ISO Latin-1 (dalam hal ini
contoh identik dengan ASCII) masing-masing UTF-EBCDIC (dalam contoh ini identik dengan normal
EBCDIC). Lihat dokumentasi Encode::PerlIO untuk detailnya.

Karena lapisan PerlIO menggunakan IO mentah secara internal, semua ini sama sekali mengabaikan jenis Anda
filesystem (ASCII atau EBCDIC) dan variabel lingkungan IO_CONVERSION. Jika Anda menghendaki
dapatkan perilaku lama, bahwa fungsi BS2000 IO menentukan konversi tergantung pada
filesystem PerlIO masih teman Anda. Anda menggunakan IO_CONVERSION seperti biasa dan memberi tahu Perl,
bahwa itu harus menggunakan lapisan IO asli:

ekspor IO_CONVERSION=YA
ekspor PERLIO=stdio

Sekarang IO Anda akan menjadi ASCII pada partisi ASCII dan EBCDIC pada partisi EBCDIC. Lihat
dokumentasi PerlIO (tanpa "Encode::"!) untuk kemungkinan lebih lanjut.

PENULIS


Thomas Dorner

Gunakan perlbs2000 online menggunakan layanan onworks.net


Server & Workstation Gratis

Unduh aplikasi Windows & Linux

  • 1
    Lantai Kantor
    Lantai Kantor
    OfficeFloor menyediakan inversi dari
    kontrol kopling, dengan: - ketergantungan
    injeksi - injeksi lanjutan -
    injeksi benang Untuk informasi lebih lanjut
    mengunjungi...
    Unduh OfficeFloor.dll
  • 2
    DivKit
    DivKit
    DivKit adalah sumber terbuka Berbasis Server
    Kerangka UI (SDUI). Ini memungkinkan Anda untuk melakukannya
    meluncurkan pembaruan yang bersumber dari server
    versi aplikasi yang berbeda. Bisa juga
    digunakan untuk...
    Unduh DivKit
  • 3
    subkonverter
    subkonverter
    Utilitas untuk mengkonversi antara berbagai
    format langganan. Pengguna Shadowrocket
    harus menggunakan ss, ssr atau v2ray sebagai target.
    Anda dapat menambahkan &komentar= ke
    HT yang disukai Telegram...
    Unduh subkonverter
  • 4
    BERDEBUR
    BERDEBUR
    SWASH adalah numerik tujuan umum
    alat untuk mensimulasikan goyah,
    non-hidrostatik, permukaan bebas,
    aliran rotasi dan fenomena transportasi
    di perairan pantai sebagai...
    Unduh SWASH
  • 5
    VBA-M (Diarsipkan - Sekarang di Github)
    VBA-M (Diarsipkan - Sekarang di Github)
    Proyek telah pindah ke
    https://github.com/visualboyadvance-m/visualboyadvance-m
    Fitur: Kreasi curang, simpan status multi
    sistem, mendukung gba, gbc, gb, sgb,
    sgb2Tu...
    Unduh VBA-M (Diarsipkan - Sekarang di Github)
  • 6
    Stacer
    Stacer
    Pengoptimal dan Pemantauan Sistem Linux
    Repositori Github:
    https://github.com/oguzhaninan/Stacer.
    Audiens: Pengguna Akhir/Desktop. Pengguna
    antarmuka: Qt. Pemrograman La...
    Unduh Stacer.dll
  • Lebih banyak lagi »

Perintah Linux

Ad