ภาษา PHP ที่เราใช้ทุกวันนี้เป็นการสร้าง interpreter โดยบริษัท Zend แม้จะมีคู่มือบอกว่าใช้งานอย่างไรแต่ก็ไม่มีสเปคชัดเจนให้ผู้ที่ต้องการนักพัฒนาคอมไพล์เลอร์ของตัวเองไปพัฒนาได้ ตอนนี้ทางเฟซบุ๊กจึงเข้ามาช่วยเขียนสเปคนี้ให้ด้วยตัวเอง และเวอร์ชั่นแรกก็ออกมาให้อ่านกันแล้ว
สเปคภาษานี้จะอิงกับ PHP 5.6 โดยปล่อยออกมาพร้อมกับชุดทดสอบความเข้ากันได้
การที่ภาษามีสเปคชัดเจน ทำให้การอิมพลีเมนต์มีได้หลากหลาย เช่นใน Python นั้นเราสามารถใช้นิยามภาษาไปสร้าง Jython ที่เข้ากันได้ (แม้ตัวโมดูลอาจจะเข้ากันไม่ได้ก็ตาม) หรือภาษา C/C++ ที่มีคอมไพล์เลอร์จากผู้ผลิตหลายรายให้เลือกใช้งาน
ตอนนี้ยังเป็นแค่ดราฟท์ แต่ก็สามารถเข้าไปอ่านสเปคและดาวน์โหลดชุดทดสอบได้ที่ GitHub
ที่มา - PHP.net
Comments
ตั้งแต่ PHP เกิดมา รู้สึกว่า Facebook จะเอามาใช้งานได้โหดสุดแล้ว
ขอบคุณ facebook ที่ทำให้ php ยังสุดยอดเสมอ -/-
กราบ _/\_
อนุโมทนาสาธุ
สอบถามหน่อยครับ ผมทราบจากหลายๆ ที่ว่า FB ใช้ PHP เป็นหลัก
แล้วอะไรคือจุดเด่นของ FB ที่ใช้ PHP มากกว่าเว็บไซต์อื่นๆ รึครับ ?
งงคำถามครับ หมายถึง " ทำไม FB ต้องเลือกใช้ PHP " รึเปล่าครับ?
ประมาณนั้นครับ
หรืออาจจะเปลี่ยนคำถามเป็นว่า ทำไมถึงได้สิทธิ์เข้ามามีส่วนร่วมในการเขียนสเปคน่ะครับ
น่าจะเป็นเพราะด้านความพร้อม และความพยายาม รวมถึงการพัฒนาที่ FB ต้องทำอยู่ตลอดครับ ตัว FB เองได้เอา Open Source หลายๆ ตัวมาพัฒนาในแบบของตัวเองมานานหลายปี เช่น MySQL (https://www.facebook.com/MySQLatFacebook), Memcache (https://www.facebook.com/MemcacheAtFacebook) ส่วนตัว PHP เคยได้ยินข่าวว่าเขียน Library บางตัวเองเพื่อเร่งประสิทธิภาพการทำงานของเว็บด้วยครับ ^^
มันไม่มีใครต้องให้สิทธิ์ใครครับ
PHP เป็นโครงการโอเพนซอร์สมันก็มีพฤติกรรมของมันอยู่แล้วว่ามันทำงานอย่างไร ใครจะเขียนคอมไพล์เลอร์ใหม่ให้ทำงานเหมือนกันก็ทำได้อยู่แล้ว
แต่ที่ทำก่อนหน้านี้คือต้องไปแกะจากพฤติกรรมตัว PHP Interpreter กันเอง ว่ารันคำสั่งไหนแล้วเป็นอย่างไร ตอนนี้ก็มีคนมาเขียนให้ ในแง่ของ PHP ตัวโครงการหลักไม่มีอะไรเปลี่ยน นอกจากว่ามีคนมาเขียน testcase ให้ ถ้าผมอยากเขียน php interpreter ใหม่แทนที่จะต้องไปแกะโค้ด ตอนนี้ก็เขียนตามสเปคนี้อย่างเดียว
PHP เองมีปัญหาไม่ backward compatible อยู่เรื่อยๆ (app ที่เขียนกับ php รุ่นเก่ากว่าไปใช้รุ่นใหม่ไม่ได้) หากทาง PHP ยอมรับสเปคที่เขียนนี้อนาคตอาจจะทดสอบกับชุดทดสอบพวกนี้ก่อนที่จะออกรุ่นต่อไป (แต่ถ้าไม่ยอมรับก็ไม่มีใครไปบังคับ)
lewcpe.com, @wasonliw
โอ ขอบคุณมากครับ ผมเพิ่งรู้แฮะว่า PHP เป็น Opensource ด้วย - -"
FB เกิดในปี 2004 ตอนนั้นภาษาสำหรับทำเว็บคงยังมีไม่มาก เท่าที่นึกออกก็มี PHP, JSP, ASP, Perl แล้วภาษาที่ใกล้เคียงภาษา C มากที่สุดก็น่าจะเป็น PHP ก็เลยถูกหยิบมาใช้ แล้วพัฒนาต่อยอดมาเรื่อยๆ
FB ไม่ได้ใช้ PHP เพียวๆ ในการทำ ส่วนของ Backend ยังมี C++, Python, Erlang ... etc มาช่วยอีก