ยาซูเป็นบรรทัดคำสั่งตีความภาษาสคริปต์ที่มีสภาพแวดล้อมที่พร้อมทำสำหรับ C หรือ C ++ ฟังก์ชั่น & nbsp;. ใช้ฝังกิจวัตรของตัวเองเป็นภาษาโดยอ้างอิงไว้ในหนึ่งในไฟล์ที่มาของตัวยาซูของแล้ว recompiling ยาซู เมื่อมีการเรียกใช้ยาซูก็จะนำมาขึ้นจอพร้อมรับคำสั่งที่ผู้ใช้สามารถกำหนดและจัดการกับตัวแปรอาร์เรย์ฟังก์ชั่นสคริปต์อ่านและเขียนไฟล์ ฯลฯ - และเรียกฟังก์ชั่นที่ฝังตัวของเขา ตั้งแต่เพียงมาตรฐานห้องสมุด C มีการใช้ยาซูควรจะทำงานในเพียงเกี่ยวกับแพลตฟอร์มใด ๆ
สคริปต์ยาซูเป็นเรื่องที่เรียบง่าย: การเรียน, ชุด, ฟังก์ชั่นการขัดแย้งฟังก์ชั่นอื่น ๆ ที่มีอยู่ทั้งหมดในสิ่งเดียวกัน ความเรียบง่ายของโครงการนี้ลดช่วงการเรียนรู้ แต่มันก็ยังซื้อภาษาจำนวนมากของทั่วไป - ยาซูอนุญาตให้โครงสร้างการเขียนโปรแกรมที่แปลกใหม่มากมายที่หาได้ยากในภาษาสคริปต์ แต่ได้พิสูจน์แล้วว่ามีประโยชน์อย่างเด่นชัดอยู่ในมือของผู้เขียน
ดาวน์โหลดยาซูประกอบด้วย: C / C ++ ไฟล์ที่มา; Makefile; จำเป็น ".zoo" สคริปต์; และเอกสาร
มีอะไรใหม่ ในข่าวประชาสัมพันธ์ฉบับนี้.
- บักคงที่:
- ปัญหาการกำหนดสมาชิกพร็อกซี่ในขณะที่การปรับขนาดอาร์เรย์; เช่นที่ proxy_array [1] @ :: {}
- 'ผลตอบแทน Q' ตอนนี้ทำงานเมื่อ 'Q' จะถือเป็นโมฆะ
- ปัญหาที่ไม่ได้ลงนามจำนวนเต็มขนาดใหญ่จะพิมพ์เป็น '0'
- ไป () จะได้รับการติดอยู่ภายในองค์ประกอบมากมาย
- read_string () (และ ReadTable ()) ไม่สามารถอ่านเลขยกกำลังที่มีเครื่องหมายบวก (เช่น 1e + 1)
- ปัญหาการอ่านและการเขียนตัวเลขที่ใกล้เคียงกับอันเดอร์โฟแม่นยำสองขีด จำกัด
- ปัญหากับ ReadTable () เมื่อพยายามที่จะปรับขนาดรายการ
- ปัญหากับ ReadTable () เมื่อตารางสองมิติมีเพียงองค์ประกอบหนึ่ง
- ปัญหาในการใช้ SaveTable () กับตาราง null
- สำเนา () ความล้มเหลวเมื่ออาร์กิวเมนต์แรกคือดั้งเดิมและอาร์กิวเมนต์ที่สองเป็นคอมโพสิต
- ปัญหากับการเดินทาง () ที่พุ่งในเมื่อผู้ประกอบ # ได้รับการแนะนำ
- ความผิดพลาดเป็นครั้งคราวเมื่อ start.zoo พยายามธงข้อผิดพลาด
- ข้อความเตือนภายใต้บางคอมไพเลอร์ (extrnl.c)
- SaveTable () ตอนนี้ทำให้แน่ใจว่าจะยกเลิกการนามแฝงตารางถ้ามันไม่ถูกต้องที่เรียกว่า
- ข้อผิดพลาดใน SaveTable () เมื่อผ่านที่ไม่ใช่คอมโพสิต 'ตาราง'
- ข้อผิดพลาดสถานะที่สถานที่ที่ไม่ถูกต้อง
- ข้อผิดพลาดอย่างเชื่องช้าจับกุมเมื่อเครื่องคิดเลขที่พยายามที่จะพิมพ์วัตถุตนเองอ้างอิง
- การปรับปรุง:
- ออก 'นี้.' คำนำหน้าเมื่อกำหนดตัวแปร นี้จะทำให้เกิดปัญหาในขั้นตอนที่กำหนดตัวแปรที่มีชื่อเดียวกับตัวแปรทั่วโลก!
- = @ B ตอนนี้ทำงานเมื่อขจะถือเป็นโมฆะ ซึ่งหมายความว่า 'กับดัก (x)' ไม่ได้เป็นวิธีที่จะตรวจสอบสมาชิกโมฆะ; ใช้ 'ถ้า x == @nothing' แทน.
- เพิ่ม 'อันเดอร์โฟล์' รหัสเตือน runtime
- เพิ่มแมว () เพื่อ user.zoo
- เพิ่มบันทึก () ซึ่งพยายามเส้นทางไดเรกทอรีทั้งหมด (มันจะคล้ายคลึงกับการโหลด ())
- SaveTable () ตอนนี้พยายามที่เส้นทางไดเรกทอรีทั้งหมด
- เพิ่ม LS () ซึ่งพิมพ์ออกตัวแปรในไดเรกทอรีปัจจุบัน
- เพิ่ม compile_and_do_in () เพื่อ user.zoo
- เพิ่มรอบ () ที่ทำงานเพื่อใกล้ที่สุดจำนวนเต็ม
- เร่งการปรับขนาดของตารางโดยใช้ ReadTable ()
มีอะไรใหม่ ในรุ่น 1.4:
- บักคงที่:
- การทำงานที่ดีขึ้น () ของการจัดการกรณีของชื่อไฟล์เมื่อ run.CleanUp มีการตั้งค่า
- เป็นจริง
- ข้อผิดพลาดที่ผิดพลาดเมื่อออกหรือกลับมาจาก user.zoo
- บกพร่องใน ReadTable () ที่เกี่ยวข้องกับการปรับขนาดของตาราง
- ปัญหาในข้อความผิดพลาดจาก ReadTable ()
- การปรับปรุง:
- เพิ่มผู้ประกอบการที่จะมาแทนที่ # RunCode () RunConstructor ()
- เพิ่ม ';' ในฐานะที่เป็นสัญลักษณ์ทางเลือกสำหรับ 'รหัส'
- เริ่มต้นเครื่องคิดเลขที่ 'ที่'
- เพิ่มตัวพิมพ์เล็ก () / พิมพ์ใหญ่ () ฟังก์ชั่นการ user.zoo
- เพิ่มรหัสข้อผิดพลาดในการ ReadTable ()
มีอะไรใหม่ ในรุ่น 1.3.1:
- แก้ไขข้อผิดพลาดอันยาวนานที่บางครั้ง ชนโปรแกรมเมื่อใช้ไป ().
- คุณลักษณะการทำความสะอาดอัตโนมัติใหม่ของการทำงาน () ยังนำมาใช้ในการโพสต์ที่ผ่านมาได้รับมีปัญหา unreproducible และเป็นไปได้ว่าปัญหาการแก้ไขนี้จะใช้เวลาการดูแลที่มากเกินไป.
- สองการปรับปรุงอย่างมากเพิ่มเครื่องคิดเลข 1) การใช้งานของการวิ่ง () มากกว่าการพิมพ์ () และ 2) การแนะนำของ 'ปี' ตัวแปรดังกล่าวเป็นหนึ่งมักจะพบในสภาพแวดล้อมทางวิทยาศาสตร์การเขียนโปรแกรม .
มีอะไรใหม่ ในรุ่น 1.3.0.1:
- Fixed ข้อผิดพลาด.
มีอะไรใหม่ ในรุ่น 1.3:
- บักคงที่:
- ปัญหาร้ายแรงอาจเกิดขึ้นจากการละเลยอักขระ null ที่ส่วนท้ายของ start.zoo หรือสคริปต์เริ่มต้นอื่น ๆ
- โหลด () และบันทึก () ถูกลวกใช้โหมด ASCII มากกว่าไบนารีซึ่งก่อให้เกิดปัญหาในคอมพิวเตอร์
- อีกสองรั่วไหลของหน่วยความจำและหนึ่งอ้างอิงข้อผิดพลาด (ข่าวที่มีศักยภาพ 3 รั่ว.)
- เครื่องคิดเลขที่ไม่ได้ทำงานในรุ่นก่อนหน้า
- ข้อบกพร่องหลายที่เกี่ยวข้องกับ [^ .. ], [+ .. ] + [.. ] =! หรือฟังก์ชั่นการโทรทางด้านซ้ายของกำหนด / ถือเอาที่ / etc ผู้ประกอบการ
- ปัญหาที่ [+ .. ] / + [.. ] ผู้ประกอบการจะผนวกกับสมาชิกที่ซ่อนอยู่
- เกิดปัญหาที่เกี่ยวข้องกับขนาด 0 อาร์เรย์พร็อกซี
- ปัญหา w / ลงทะเบียนพิมพ์เครื่องคิดเลข (สวมหน้ากากโดยก่อนหน้านี้ Calc ปัญหา. แต่ปัญหานี้ในรุ่นก่อนหน้านี้เช่นกัน)
- ปัญหาที่เกิดจากการปรับขนาดช้าของอาร์เรย์ขนาดใหญ่
- ถอดแยกชิ้นส่วน () พิมพ์ชื่อตัวแปรที่ไม่ถูกต้องในเครื่อง 64 บิต
- ปรับขนาด () ขณะนี้ช่วยให้เป็นโมฆะอาร์กิวเมนต์สุดท้าย
- ชิ้นส่วนข้อผิดพลาดที่น่าอึดอัดใจเมื่อผู้ใช้ & quot; กลับ my_array [, b] & quot; จากคำสั่ง
- ผิดพลาดพร้อมรับคำสั่งหลังจากที่กลับมาหลายดัชนีของอาร์เรย์
- ปัญหาข้อผิดพลาดที่ทำเครื่องหมายบนเส้นเริ่มต้นด้วย | ** | สไตล์ความคิดเห็น
- ถอดแยกชิ้นส่วน () ล้มเหลวเมื่อได้รับสคริปต์ null
- การปรับปรุง:
- กำหนดค่ายาซูเพื่อที่จะสามารถฝังตัวอยู่ใน / เรียกโดยรหัส C; ยังใช้ซ้ำจากภายในยาซู
- เมื่อสคริปต์อีกรัน () ก่อนลบสมาชิกที่กำหนดไว้ครั้งที่แล้ว: ไม่มีกับดักมากขึ้น (ถอด .. ) ที่จำเป็น
- เพิ่มไป () / รหัสผ่านสำหรับการเปลี่ยน / ดูตัวแปรพื้นที่ทำงานพร้อมรับคำสั่งของ
- เพิ่มดำเนินการเปรียบเทียบอ้างอิง: '== @' และ '/ = @'
- เพิ่มผู้ประกอบการกำหนดพร็อกซี่: '# ::'
- ทำโหลด () ได้เร็วขึ้นและหน่วยความจำมีประสิทธิภาพมากขึ้น
- สตริงพิมพ์ ' D n' เป็นจุดสิ้นสุดของเส้นเดียว
- run () สามารถกลับผลของคำสั่งการกลับมาของสคริปต์
- ผลรวมเพิ่ม () ค่าเฉลี่ย () ฟังก์ชั่นการ user.zoo
- เพิ่มถ่าน () C_string () ฟังก์ชั่นการ user.zoo
- เปลี่ยน () ขณะนี้ช่วยให้ผู้ใช้สามารถปรับแต่งการค้นหาเส้นทางของรหัสเปลี่ยน
- โยน () สามารถปรับแต่งสถานที่ตั้งของข้อผิดพลาดโยนและโยนคำเตือนเช่นกัน
- run () จะช่วยให้คำเตือนในสคริปต์ที่จะปรากฏที่บรรทัดคำสั่ง (สมมติว่าไม่มีการแทรกแซงดัก () หลังจากเตือน)
- ถอดแยกชิ้นส่วน () สามารถข้ามนิพจน์ใน bytecode รวบรวม
- แทนที่ RunHobbish () กับ do_in ทำงานได้มากขึ้น () ประจำใน user.zoo
- เพิ่ม RunCode () ใน user.zoo; RunConstructor () ขณะนี้เป็นกรณีพิเศษของกิจวัตรประจำวันนี้
- การอ่านอย่างต่อเนื่อง bytecode เป็น slongs
- ตอนนี้ต้องใช้ตัวชี้โมฆะมากกว่า 0 ในรหัส C
- การปรับปรุงบางข้อความผิดพลาด
- เบ็ดเตล็ด:
- เปลี่ยนคำ bytecode สำหรับผู้ประกอบการอาร์เรย์แทรก ([+ .. ] + [.. ]) และลบ
- กำจัด CheckType () จาก user.zoo - & quot; ดัก (= @ B) & quot; มักจะดีกว่า
- กำจัดที่มีอยู่ () จาก user.zoo - & quot; อยู่ (& quot; & quot;) & quot; เป็นส่วนใหญ่ที่ซ้ำซ้อนกับ & quot; ดัก () & quot;
มีอะไรใหม่ ในรุ่น 1.2:
- 1.2 รุ่นของยาซูเพิ่งได้รับการส่งมอบระยะยาวก่อน หลังจากที่จำนวนข้อผิดพลาดร้ายแรงในเครื่อง 64 บิตมาถึงจุดเมื่อสัปดาห์ที่แล้ว ยาซูเป็นบรรทัดคำสั่งตีความภาษาสคริปต์ที่ผู้ใช้มีจุดมุ่งหมายที่จะปรับแต่งโดยการฝังของตัวเอง C หรือ C ++ กิจวัตรเป็นภาษา ความแปลกใหม่ของยาซูสคริปต์เป็นวิธีการที่อยู่เบื้องหลังกฎไวยากรณ์อนุรักษ์นิยมมองที่สามารถประเมินการผลิตสร้างสคริปต์ที่หายากและมีประโยชน์มากมายที่ผู้เขียนยังไม่ได้พบในภาษาอื่น ๆ .
- การเปลี่ยนแปลงที่สำคัญจริงๆในรุ่นปัจจุบันคือการกำจัดของสมมติฐานเหล่านั้นเกี่ยวกับขนาดจำนวนเต็มที่ทำให้เกิดเกิดปัญหาทันที นี้ได้จำเป็นต้องมีการปรับเปลี่ยนกันอีกอย่างมีนัยสำคัญ: R_ulong ลงทะเบียนได้หายไปจากการลงนามในการลงนามและตั้งชื่อเพื่อ R_slong การเปลี่ยนชื่อสามารถในหลักการที่ทำให้เกิดปัญหาย้อนกลับเข้ากันได้แม้ว่าจะโชคดีที่ลงทะเบียนจำนวนเต็มไม่ค่อยจะต้องมีการเรียกอย่างชัดเจน สุดท้ายเกี่ยวกับบางสิ่งบางอย่างน่าทึ่งให้กับผู้ใช้มากที่สุด แต่ใช้เวลานานสำหรับผู้เขียน C / C ++ ไฟล์ที่มาได้รับการปรับปรุงรูปแบบ:. พวกเขาได้รับ (สุดท้าย) แสดงความคิดเห็นและการจัดรูปแบบของพวกเขาได้รับการปรับปรุง
- เพราะผู้เขียนสีแดงเผือดตะกายบิตการโพสต์รุ่นปัจจุบันก็เป็นไปได้ว่าข้อบกพร่อง 64 บิตยังแฝงตัวอยู่ในรหัส หากเป็นเช่นนั้นแล้วอีกรุ่นที่มีการแก้ไขเพิ่มเติมมีแนวโน้มที่จะต้องเตรียมพร้อมในไม่กี่วันมากเป็นผู้เขียนใช้โปรแกรมของเขาด้วยความโลภ.
มีอะไรใหม่ ในรุ่น 1.1:
- บักคงที่:
- ไม่ถูกต้องถูกตั้งค่าสถานะข้อความผิดพลาดในเกือบสคริปต์ใด ๆ ที่มีค่าคงที่ inlined
- ผู้ประกอบการผนวกรหัส ':' ไม่ได้ทำงานอย่างถูกต้องในบริบทบางอย่างเช่น ภายในประกอบรหัสทดแทน
- บังคับติดลบไม่ได้คัดลอกองค์ประกอบมากมายในลำดับที่ถูกต้องเมื่อดัชนีหลายที่ได้รับอย่างชัดเจน (เช่น [*] = ... , ... b = [1, 2])
- ปัญหาตัวเลขเมื่อพิมพ์ตัวเลขที่ขอบของความละเอียดแม่นยำสอง
- ไม่ถูกต้องถูกตั้งค่าสถานะข้อความผิดพลาดต่อไปนี้ endif endf หรือ endw
- ชื่อสมาชิกที่ไม่ถูกต้องในข้อผิดพลาดที่สมาชิกไม่พบจากไฟล์ดำเนินการโดย user.zoo
- หมายเลขแรกส่งกลับโดยสุ่ม () ไม่ได้สุ่มทั้งหมด
- สำเนา () ไม่ได้ตรวจสอบสำหรับการอ้างอิงในตัวเอง
- ข้อผิดพลาดใน SaveTable () เมื่อมิติที่สองของตารางเป็นที่ขนาดเป็นศูนย์
- การจัดเรียง () โยนข้อผิดพลาดที่ไม่จำเป็นสำหรับรายการความยาว 0
- misreading ของความคิดเห็น null '| *** |' ด้วยเลขคี่ของ '* s'
- การปรับปรุง:
- เส้นทางการค้นหาของคำนิยามใหม่ {} ตอนนี้เสมอไปผ่านสคริปต์ที่กำหนดไว้ก็ไม่จำเป็นต้อง *** สคริปต์ล้อม
- เพิ่มการปรับขนาด () เพื่อ user.zoo
- เพิ่มนาที (), สูงสุด () ฟังก์ชั่นการ user.zoo
- การจัดเรียง () ตอนนี้รายชื่อเรียงลำดับเช่นเดียวกับตาราง
- ใหม่ () ยอมรับตัวแปรแหล่งที่มาที่แตกต่างกันสำหรับประเภทและข้อมูล
- สำเนา () ส่งกลับรหัสข้อผิดพลาด
- การโต้แย้งที่ดีกว่าการตรวจสอบ SaveTable ()
ความคิดเห็นที่ไม่พบ