คำถามติดแท็ก history

สำหรับคำถามเกี่ยวกับประวัติของการเขียนโปรแกรมและการคำนวณ

3
“ เคยเปลี่ยนค่าของ 4 หรือไม่?” - สิ่งนี้เกิดขึ้นได้อย่างไรในแบบทดสอบ Hayes-Thomas
ในปี 1989 เฟลิกซ์ลีจอห์นเฮย์สและแองเจลาโทมัสเขียนทดสอบแฮกเกอร์รูปแบบของการตอบคำถามที่มีเรื่องตลกภายในหลาย ๆ ขณะที่“ คุณกินเมือกแม่พิมพ์? ” ฉันกำลังพิจารณาชุดต่อไปนี้: 0015 Ever change the value of 4? 0016 ... Unintentionally? 0017 ... In a language other than Fortran? มีเกร็ดเล็กเกร็ดน้อยเกี่ยวกับการสร้างหมายเลข“ 4” โดยเฉพาะในซีรี่ส์หรือไม่? การใช้ Fortran บางอย่างอนุญาตให้แก้ไขค่าของค่าคงที่หรือไม่ เป็นไปได้ในภาษาอื่นที่ใช้งานทั่วไปในเวลานั้นหรือไม่?
24 history  fortran 

5
ภาษาที่ใช้ในการเขียนโปรแกรม“ ให้” ปรากฏขึ้นเป็นครั้งแรก?
ฉันสงสัยเกี่ยวกับต้นกำเนิดของ "การปล่อย" ที่ใช้ใน Lisp, Clojure และ Haskell มีใครรู้บ้างว่าภาษานั้นปรากฏในภาษาใดเป็นอันดับแรก

7
รูปแบบการออกแบบของยุคการเขียนโปรแกรมขั้นตอนคืออะไร [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ที่คล้ายกัน: การเขียนโปรแกรมทำได้อย่างไรเมื่อ 20 ปีที่แล้ว? OOPเป็นแฟชั่นค่อนข้างปัจจุบันมีรากในSimula 67ในปี 1960 และต่อมาได้รับความนิยมจากสมอลล์ทอล์คและC ++ เรามีหนังสือแห้งหนังสือหลายเล่มเกี่ยวกับรูปแบบการออกแบบในโลกแห่งวัตถุ แต่สิ่งที่เป็นหลักการสำคัญในการเขียนโปรแกรมก่อนที่จะนำ OOP กระบวนทัศน์ที่กว้าง? และรูปแบบการออกแบบที่สำคัญคืออะไร

6
กฎหมายของ Jamie Zawinski หมายถึงอะไร
ฉันต้องการคำอธิบายที่ถูกต้องเกี่ยวกับกฎหมายการห่อซอฟท์แวร์ของJamie Zawinski : ทุกโปรแกรมพยายามขยายจนกว่าจะสามารถอ่านจดหมายได้ โปรแกรมที่ไม่สามารถขยายได้จะถูกแทนที่ด้วยโปรแกรมที่สามารถทำได้
24 history  concepts 

1
เหตุใดอาร์เรย์ใน. Net จึงมีความยาว แต่คอลเลกชันประเภทอื่นมีจำนวนถึง [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว ใน C # ตัวอย่างอาร์เรย์มีคุณสมบัติความยาว แต่คอลเล็กชันประเภทอื่น ๆ เช่นรายการ ฯลฯ มีคุณสมบัติ Count มีเหตุผลทำไมทั้งสองนี้แตกต่างกันอย่างไร ถ้าฉันอยากรู้

5
เหตุใดภาษาการเขียนโปรแกรมยอดนิยมหลายภาษาจึงมีอิทธิพลต่อ C [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการถกเถียงอภิปรายโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา ภาษาโปรแกรม 10 อันดับแรกตามดัชนี TIOBEดูเหมือนจะได้รับอิทธิพลอย่างมากจาก C: 1. Java ภาษามาจากไวยากรณ์ส่วนใหญ่จาก C และ C ++ แต่มีโมเดลวัตถุที่ง่ายกว่าและมีสิ่งอำนวยความสะดวกในระดับต่ำน้อยลง - wikipedia.org 2. ค C เป็นหนึ่งในภาษาการเขียนโปรแกรมที่ใช้กันอย่างแพร่หลายตลอดเวลาและมีสถาปัตยกรรมคอมพิวเตอร์น้อยมากที่คอมไพเลอร์ C ไม่มีอยู่ - wikipedia.org 3. C # ในระหว่างการพัฒนา. NET Framework นั้นคลาสไลบรารีถูกเขียนโดยใช้ระบบคอมไพเลอร์โค้ดที่ได้รับการจัดการที่เรียกว่า Simple Managed C (SMC) ในเดือนมกราคม 1999 Anders Hejlsberg ได้จัดตั้งทีมเพื่อสร้างภาษาใหม่ในเวลาที่เรียกว่า Cool ซึ่งย่อมาจาก "C-like …

5
เหตุใดเครื่องมือสร้างจึงใช้ภาษาสคริปต์แตกต่างจากภาษาโปรแกรมพื้นฐาน
ฉันเพิ่งได้ใช้เครื่องมือสร้างบางอย่างสำหรับโครงการ Nodejs ในที่ทำงานเมื่อฉันตระหนักว่าเครื่องมือสร้าง / ระบบหลักของภาษาส่วนใหญ่ใช้ภาษาที่แตกต่างจากภาษาโปรแกรมพื้นฐาน ตัวอย่างเช่นmakeไม่ใช้ C หรือ C ++ เพื่อเขียนสคริปต์และant (หรือ Maven) ไม่ได้ใช้ Java เป็นภาษาสำหรับการเขียนสคริปต์ ภาษาที่ใหม่กว่าอย่าง Ruby ใช้ภาษาเดียวกันเพื่อสร้างเครื่องมือเช่นrakeซึ่งเหมาะสมกับฉัน แต่ทำไมไม่เป็นเช่นนี้เสมอไป? ข้อดีของการมีเครื่องมือสร้างที่ใช้ภาษาต่างจากภาษาต้นแบบคืออะไร

3
ทำไมคำสั่งการคัดลอกมักใช้ชื่อว่า MOV?
ในแอสเซมบลีค่อนข้างมากคำสั่งการคัดลอกค่ามักจะชื่อ "MOV" และคำอธิบายในคู่มือมักจะมี "ย้าย" (อย่างไรก็ตามคำอื่น ๆ สามารถใช้เช่น "โหลด", "เก็บ", "เก็บ", "แยก" ฯลฯ ) ) เป็นเรื่องแปลกที่จะหาISA ) ที่ไม่ปฏิบัติตามอนุสัญญานี้ ในทางตรงกันข้ามในบริบทอื่น ๆ "ย้าย" แตกต่างจาก "คัดลอก" ในแง่ที่แหล่งที่ถูกทำลาย (ตัวอย่างเช่น "mv" กับ "cp" ใน Unix ย้าย [F6] ในนอร์ตันผู้บัญชาการและโคลน ฯลฯ ) "การย้าย" ของ Assembler มีความหมาย "การคัดลอก" จริง ๆ ทำให้ค่าของแหล่งข้อมูลครบถ้วน ฉันพบว่าสิ่งนี้เริ่มต้นอย่างน้อยตั้งแต่IBM 1401 (1959) แต่IBM 360ใช้คำนี้เฉพาะสำหรับการคัดลอกในหน่วยเก็บข้อมูล แต่ไม่ได้สำหรับการดำเนินการระหว่างการลงทะเบียนและหน่วยเก็บข้อมูล (ซึ่งใช้ "load" …
23 history  assembly 

1
“ exit (-1)” มาจากไหน?
ฉันเห็นในจำนวนมากซอฟต์แวร์เดิมและบทเรียนที่ไม่ดีบนอินเทอร์เน็ตที่แนะนำให้ใช้exit(-1), return -1หรือคล้ายกันที่จะเป็นตัวแทน "เลิกผิดปกติ" ปัญหาคือใน POSIX อย่างน้อย-1ไม่เคยมีมาก่อนและไม่ใช่รหัสสถานะที่ถูกต้อง man 3 exitแสดงให้เห็นว่าexit()ผลตอบแทนที่คุ้มค่าของการstatus & 0377ไปยังผู้ปกครองที่มีความหมายว่าจะกลายเป็น-1 255สำหรับระบบที่ไม่ใช่ POSIX EXIT_FAILUREขอแนะนำให้พกพาได้ แต่ฉันไม่เคยเห็น "-1 หมายถึงการสิ้นสุดที่ผิดปกติ" ร่วมกับ "EXIT_FAILURE อาจเป็นสิ่งที่นอกเหนือจาก 1" ซึ่งบ่งชี้ว่าพวกเขาเชื่ออย่างชัดเจนว่า "-1" นั้นเป็นเรื่องปกติแม้ในระบบที่ไม่ใช่ POSIX ต่อไปนี้เป็นตัวอย่างของคำถาม StackOverflowที่ทำให้เกิดปัญหานี้ ซอฟต์แวร์ "unrealircd" เป็นตัวอย่างของโปรแกรมที่ใช้exit(-1)ในการยกเลิกโปรแกรม systemdในทางปฏิบัตินี้ทำให้ยากที่จะติดต่อกับ รูปแบบการต่อต้านนี้มาจากไหน มันถูกต้องในบางบริบท?

1
สิ่งที่พวกเขาเรียกว่าการเขียนโปรแกรมเชิงวัตถุก่อนที่อลันเคย์คิดค้นคำนี้
Alan Kay อ้างว่า "ฉันสร้างคำว่า" เชิงวัตถุ "และฉันสามารถบอกคุณได้ว่าฉันไม่มี C ++ ในใจ" แน่นอนว่าเขามีสิ่งที่อยู่ในใจคือสมอลทอล์ค แต่เขาไม่ได้เขียนโปรแกรมเชิงวัตถุ เขาได้รับแนวคิดพื้นฐานจาก Simula ดังนั้นถ้าคำนั้นยังไม่ถูกประดิษฐ์ขึ้นมาพวกเขาเรียกการเขียนโปรแกรมเชิงวัตถุใน Simula ว่าอย่างไร?

6
ปรัชญา / การใช้เหตุผลเบื้องหลังชื่อวิธีการปาสคาลของ C # คืออะไร
คำถามนี้ถูกโยกย้ายจาก Stack Overflow เพราะสามารถตอบได้ใน Software Engineering Stack Exchange อพยพ 8 ปีที่ผ่านมา ฉันเพิ่งเริ่มเรียนรู้ C # มาจากพื้นหลังใน Java, C ++ และ Objective-C ฉันพบ Pascal-casing ของ method-ชื่อค่อนข้างไม่ซ้ำใครและตาดยากที่จะคุ้นเคยในตอนแรก อะไรคือเหตุผลและปรัชญาที่อยู่เบื้องหลังสิ่งนี้? ฉันเดาว่าเป็นเพราะคุณสมบัติ C # ไม่เหมือนกับใน Objective-C โดยที่ชื่อเมธอดสามารถเหมือนกับตัวแปรอินสแตนซ์ได้ทุกกรณีนี่ไม่ใช่กรณีที่มี C # ฉันเดาว่าหนึ่งในเป้าหมายที่มีคุณสมบัติ (เช่นเดียวกับภาษาส่วนใหญ่ที่สนับสนุน) คือการทำให้คุณสมบัติไม่สามารถแยกแยะได้อย่างแท้จริงจากตัวแปรและวิธีการ ดังนั้นหนึ่งสามารถมี "int x" ใน C # และคุณสมบัติที่สอดคล้องกันกลายเป็น X เพื่อให้แน่ใจว่าคุณสมบัติและวิธีการจะแยกไม่ออกชื่อวิธีการทั้งหมดที่ฉันคาดเดาดังนั้นจึงคาดว่าจะเริ่มต้นด้วยตัวอักษรตัวพิมพ์ใหญ่ (นี่เป็นเพียงสมมติฐานของฉันตามสิ่งที่ฉันรู้เกี่ยวกับภาษา C # - ฉันยังคงเรียนรู้อยู่) …

2
ใครออกแบบข้อยกเว้น
ข้อยกเว้นและการจัดการข้อยกเว้นมาจากที่ใด ฉันชอบวิธีที่. NET ใช้งานฉันชอบวิธีที่ C ++ รองรับ (แต่ห้องสมุดน่าเสียดายที่ใช้รหัสส่งคืนหรือเขียนเป็น C แทน) ฉันรู้ว่ามันค่อนข้างมาตรฐานในทุกภาษาใหม่ แต่ใครเป็นคนออกแบบมันมาก่อนหรือมาจากที่ไหน C ++ เป็นภาษาแรกที่ใช้หรือไม่ ฉันไม่รู้จักคนอื่นที่มีอายุมากกว่า

2
เหตุใด C ใช้เครื่องหมายดอกจันสำหรับพอยน์เตอร์ [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว ฉันเพิ่งจะเรียนรู้เกี่ยวกับ C. ฉันคิดว่ามันแปลกที่ผู้สร้างเลือกเครื่องหมายดอกจัน ( *) เป็นสัญลักษณ์สำหรับพอยน์เตอร์แทนที่จะเป็นสัญลักษณ์ที่ดูเหมือนตัวชี้ ( ->) พิจารณาว่าตัวชี้การลงทะเบียนและฟังก์ชั่นที่ทำให้เกิดความสับสนสามารถมีเหตุผลทางประวัติศาสตร์หรือทางปฏิบัติได้หรือไม่สำหรับการใช้เครื่องหมายดอกจัน
21 c  history  syntax 

11
มีเหตุผลสำหรับความมั่นใจครั้งแรกของนักวิทยาศาสตร์และวิศวกรที่ทำงานด้านปัญญาประดิษฐ์ในปี 1960 หรือไม่?
ฉันเพิ่งเริ่มเรียน AI & Data Mining และหนังสือ การเขียนโปรแกรมประยุกต์ AIเริ่มต้นด้วยภาพรวมของประวัติของ AI บทแรกเกี่ยวข้องกับประวัติความเป็นมาของ AI ตั้งแต่ปี 1940 ถึงปัจจุบัน มีคำสั่งหนึ่งโผล่ออกมาที่ฉัน: [ในยุค 60] วิศวกร AI overpromised และส่งไม่ครบ ... อะไรคือเหตุผลของความมั่นใจ มันเป็นเพราะแบบจำลองการทำนายทางคณิตศาสตร์แสดงให้เห็นว่ามีความก้าวหน้าอยู่รอบมุมหรือเนื่องจากความสามารถของฮาร์ดแวร์ที่เพิ่มขึ้นเรื่อย ๆ เพื่อใช้ประโยชน์จาก?

4
โปรแกรมเมอร์ใช้เครือข่ายเพื่อแบ่งปันทรัพยากรคอมพิวเตอร์ราคาแพงในยุค 60 และยุค 70 อย่างไร
คำถามนี้ถูกโยกย้ายจาก Stack Overflow เพราะสามารถตอบได้ใน Software Engineering Stack Exchange อพยพ 8 ปีที่ผ่านมา ฉันยังเด็กและไม่ได้มีชีวิตอยู่ในช่วงยุค 60 และยุค 70 เพื่อประสบการณ์เครือข่ายและการเขียนโปรแกรมเหมือนครั้งหนึ่งเคยเป็น ฉันเฝ้าดูการพูดคุยของ Van Jacobson ใน Content Centric Networking และในการพูดคุยเหล่านี้เขาได้ให้มุมมองทางประวัติศาสตร์ที่ระบุว่าในยุค 60 และยุค 70 การเชื่อมต่อเครือข่ายได้รับการออกแบบมาเพื่อแก้ปัญหาการแบ่งปันทรัพยากรเช่นการเข้าถึงเครื่องอ่านการ์ดที่หายาก หรือเทปไดร์ฟความเร็วสูง จากนั้นเขาก็จะบอกว่ามีข้อมูลน้อยมากในยุคนี้และข้อมูล "ไม่ได้อยู่บนคอมพิวเตอร์" มันเป็นสิ่งที่คุณพกติดตัวไปกับคุณเช่นบนเทปหรืองานพิมพ์ ฉันมีคำถามสองข้อเกี่ยวกับเรื่องนี้: 1) ผู้คน "จากระยะไกล" ใช้บางอย่างเช่นเครื่องอ่านการ์ดได้อย่างไร แน่นอนในบางจุดการ์ดจริงจะต้องถูกส่งไปทุกที่ที่คอมพิวเตอร์อยู่ หากคุณอยู่ห่างออกไป 100 ไมล์หมายความว่าพวกเขาโพสต์การ์ดออกก่อนเวลาและจากนั้นก็ใช้เครือข่ายเพื่อดำเนินการคำสั่งที่จำเป็นในการเรียกใช้การ์ดเด็คเหล่านั้นหรือไม่ 2) คนทั่วไปได้รับผลลัพธ์ของโปรแกรมอย่างไร มันถูกส่งกลับข้ามสายหรือถูกพิมพ์ลึกหนาบาง / พิมพ์ etcetera โพสต์หลังจากโปรแกรมถูกเรียกใช้กลับไปที่นักวิจัยระยะไกล? ฉันขอโทษถ้าฉันได้รับยุคของฉันผสมในทางใดทางหนึ่งที่ฉันกล่าวว่าฉันไม่ได้มีชีวิตอยู่ในเวลา ขอบคุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.