Programming Language History #2

มกราคม 30, 2007 at 8:38 am 3 ของความคิดเห็น

ต่อจากคราวที่แล้วเลยละกันนะครับ

…หลังจากที่คอมไพล์เลอร์ตัวแรกเกิดขึ้นมาแล้ว(ชื่อ A-0) ครับ
ในปี 1957 ทีมนักวิทยาศาสตร์ของ IBM ปล่อยภาษาโปรแกรมออกมาตัวหนึ่ง
ชื่อของมัน คือ FORmula TRANslating system หรือที่รู้จักกันในชื่อ
FORTRAN นั่นเอง
เป้าหมายของ FORTRAN ไม่มีอะไรมาก นอกจากเป็นเครื่องมือให้โปรแกรมเมอร์
สามารถติดต่อกับระบบภายในของเครื่องคอมพิวเตอร์ได้ง่ายขึ้น
FORTRAN มีคำสั่งสำคัญๆที่เป็นก้าวใหญ่ของวงการโปรแกรมมิ่งอยู่ด้วย
เช่นคำสั่ง IF, DO, GOTO ซึ่งคำสั่งพวกนี้ ปัจจุบันก็เป็นคำสั่งธรรมด๊าธรรมดา สำหรับการโปรแกรมมิ่งทั่วไป
ยังไม่หมดแค่นี้…
FORTRAN ยังมีการระบุชนิดตัวแปร (Data Type) เป็นภาษาแรกอีกด้วย
ไม่ว่าจะเป็น Integer, real, Double Precision(คาดว่าจะเป็น Float)
และ Logical Variable ที่เป็นค่า TRUE/FALSE นั่นแหละครับ
…ทั้งหมดนี้ เกิดขึ้นเป็นครั้งแรกในภาษา FORTRAN นี้

ภาษา FORTRAN แม้จะดีออกขนาดนี้ แต่ว่ามันก็ดีสำหรับการคำนวนทางวิทยาศาสตร์เท่านั้น
ในยุคต่อมา ที่เริ่มนำคอมคอมพิวเตอร์เข้ามามีบทบาทกับธุรกิจ
FORTRAN ไม่เหมาะสมกับการเขียนโปรแกรมทางธุรกิจเอาเสียเลย เพราะอะไร
…คำตอบคือ FORTRAN ไม่เหมาะสมในการ Input/Output ค่าในการคำนวณทางธุรกิจ
เพราะทางธุรกิจนั่น ไม่ได้มีค่า Input / Output เป็นตัวเลขอย่างเดียว
แต่มันต้องใช้ String ด้วยนะซิครับ
String เป็นสิ่งที่ FORTRAN ไม่่มี แต่ COBOL มี

ในปี 1959 COBOL ถูกพัฒนาขึ้น เพื่อเป็นภาษาทางธุรกิจ
แม้ว่าจะไม่มี Data type อย่าง real หรือ double-precision อย่าง FORTRAN
แต่ก็มี Data type ไม้เด็ดอย่าง string(ไม่แน่ใจ ว่าจะเป็นแค่ char หรือเปล่านะครับ เพราะข้อมูลบอกว่า string of text)
และที่ยิ่งกว่านั้น คือ มีการใช้ Array ด้วย
…ก็อย่างที่บอกนั่นแหละครับ ว่ามันเป็นภาษาโปรแกรมมิ่งสำหรับธุรกิจ
การเก็บข้อมูลตัวอักษร และการบันทึกเป็น Array มีประโยชน์มากครับ
นอกเหนือจาก string และ Array แล้ว ความน่าสนใจของ COBOL คือ Syntax ครับ
Syntax ของ COBOL มีความใกล้เคียงกับภาษามนุษย์มากกว่า FORTRAN ครับ
อ่านง่ายเขียนง่าย เพราะออกแบบมาให้นักธุรกิจใช้มากกว่าครับ

ปี 1958 ภาษาโปรแกรมมิ่งแบบใหม่ก็ออกมาอีก 1 ตัวครับ
LISP หรือ LISt Programming เป็นภาษาโปรแกรมที่แตกต่างจาก COBOL และภาษาใดๆอย่างสิ้นเชิง
…อ้อ เกือบลืม สร้างโดย จอห์น แมคคาร์ที(John McCarthy) แห่งสถาบัน MIT ครับ
สร้างขึ้นเพื่องานวิจัยทาง AI ของเขาเองครับ
ภาษา LISP แตกต่างจากภาษาอื่นตรงที่ ทำงานด้วยตัวเอง และทำงานตามความสัมพันธ์ภายในลิสต์
ต่างจากภาษาอื่นๆ ซึ่งทำงานตามลำดับ (อธิบายไม่ชัดเจนก็ขอโทษด้วย เรื่อง LISP เนี่ย เกินความสามารถจริงๆ เหอะๆ)
ปัจจุบันก็ยังคงมีใช้อยู่ครับ

ในปีเดียวกัน ภาษา Algol ถูกพัฒนาขึ้นโดย Comittee of Sciencific
Algol มีดีตรงที่ มีการนำ Formal Grammar อย่าง BNF (Backus-Naar Form) มาใช้เป็นครั้งแรก
ความแปลกใหม่ใน Algol มีมากมาย เช่น การเรียกใช้ Recursive Function เป็นต้น
Algol เป็นรากฐานให้กับภาษาอื่นๆที่เกิดตามมาทีหลังหลายๆภาษา เช่น Pascal และ C
แต่ Algol ก็พัฒนาตัวเองต่อไปด้วย ไปเป็น Algol60 และ Algol68
แต่ว่ายิ่งพัฒนายิ่งใช้ยาก คนก็เลยไปใช้ที่ง่ายกว่า ซึ่งก็คือ Pascal นั่นเอง

Pascal ถูกพัฒนาโดย นิคลอส เวิร์ธ(Niklaus Wirth) ในปี 1968
(ปีเดียวกับที่ Algol68 เกิดและดับเลยครับ ดับก็เพราะ Pascal นี่แหละ)
เวิร์ธไม่ได้คาดหวังว่า Pascal จะถูกเอามาให้อย่างแพร่หลายขนาดนี้ เพราะที่จริงแล้ว
เขาออกแบบเครื่องมือต่างๆ (เช่น Debugger , editing system) เอาไว้เพื่อ
…การสอนของเขาในสถาบันต่างหาก (ดันเจ๋งซะงั้น)

Pascal แทบจะรวมเอาทุกอย่างที่ดี ของ FORTRAN, COBOL และ Algol มารวมกัน
ความสวยงามและเข้าใจง่ายของ Syntax อย่าง COBOL
Input / Output ที่รองรับทั้งการคำนวนแบบ FORTRAN และการทำงานด้านธุรกิจอย่าง COBOL
แถมยังมี พอยเตอร์ ที่กล่าวว่า เป็นพลังของภาษาทุกๆภาษาเข้ามาอีก
แถมยังมีการนำคำสั่ง CASE เข้ามาใช้อีก คือการแบ่งเงื่อนไขเป็นกรณีย่อยๆ ดีอย่างนี้ไม่รู้จะว่ายังไงแล้ว Pascal กลายเป็นภาษาที่ได้รับความนิยมสูงมากในขณะนั้น
เจ๋งที่สุดของ Pascal คือการประกาศตัวแปรแบบ Dynamic ( หมายถึง ตัวแปรที่ถูกประกาศขึ้นในช่วง Run-Time) นั่นเอง
ไอ้โน่นก็ดี ไอ้นี่ก็ดี ดีไปหมด แต่ก็ต้องมาเสียท่าจนได้…

…เสียให้ใคร เพราะอะไร ติดตามตอนต่อไป ตอนนี้เหนื่อยละ พักก่อน
ไปอ่านเวอร์ชั่นไม่แปลเอาเองก็ได้นะครับ
Reference :http://www.princeton.edu/~ferguson/adw/programming_languages.shtml

Entry filed under: Uncategorized.

Programming Language History #1 Programming Language History #3

3 ความเห็น Add your own

  • 1. loveaffair  |  มกราคม 30, 2007 ที่ 11:42 am

    เมื่อไหร่จะมีภาษาที่ใช้ภาษาอังกฤษเขียนโดยตรงไปเลย
    หรือใช้ภาษาไทยดี

    ตอบกลับ
  • 2. thitipat  |  กุมภาพันธ์ 3, 2007 ที่ 3:24 am

    ใช้ภาษาปกติเขียนโดยตรงมันจะทำให้ไม่สามารถจับหลักในการเขียนได้และ ลำบากในการตีความของ compiler ว่าจะทำอะไรเพราะภาษาปกตินั้นการกระทำ 1 อย่างสามารถอธิบายได้หลายแบบ

    ตอบกลับ
  • 3. interviewz  |  กุมภาพันธ์ 16, 2010 ที่ 11:51 am

    เยี่ยมเลย ขอบคุณจ้า

    ตอบกลับ

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  เปลี่ยนแปลง )

Google photo

You are commenting using your Google account. Log Out /  เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out /  เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out /  เปลี่ยนแปลง )

Connecting to %s

Trackback this post  |  Subscribe to the comments via RSS Feed


del.icio.us For iPhone dev

Post Calendar

มกราคม 2007
พฤ อา
    ก.พ. »
1234567
891011121314
15161718192021
22232425262728
293031  

%d bloggers like this: