ผลต่างระหว่างรุ่นของ "Racket"

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
(หน้าที่ถูกสร้างด้วย '== ภาษา == == แบบฝึกหัด 1 == == ท่าพื้นฐาน == == แบบฝึกหัด 2 ==')
 
แถว 1: แถว 1:
 
== ภาษา ==
 
== ภาษา ==
 +
Racket เป็นลูกหลายหนึ่งของภาษา LISP
 +
 +
=== REPL ===
 +
 +
ส่วนล่างของจอ จะเป็น read-eval-print-loop คือพิมพ์ expression เข้าไป ระบบจะอ่าน คำนวณแล้วก็พิมพ์คำตอบ เช่น
 +
 +
> 5
 +
5
 +
> (+ 10 5)
 +
15
 +
> "hello"
 +
"hello"
 +
> (substring "hello" 1 3)
 +
"el"
 +
> (+ (* 4 5) 2)
 +
22
 +
 +
ไวยากรณ์พื้นฐานของภาษา Racket คือการเรียกฟังก์ชัน:
 +
 +
(ฟังก์ชัน อาร์กิวเมนท์1 อาร์กิวเมนท์2 ...)
 +
 +
เราจะไม่สามารถเขียนวงเล็บเล่น ๆ ได้เลย เช่น ถ้าสั่ง (5) จะได้ error ดังนี้
 +
 +
> (5)
 +
. . application: not a procedure;
 +
  expected a procedure that can be applied to arguments
 +
  given: 5
 +
  arguments...: [none]
  
 
== แบบฝึกหัด 1 ==
 
== แบบฝึกหัด 1 ==

รุ่นแก้ไขเมื่อ 15:49, 14 ตุลาคม 2557

ภาษา

Racket เป็นลูกหลายหนึ่งของภาษา LISP

REPL

ส่วนล่างของจอ จะเป็น read-eval-print-loop คือพิมพ์ expression เข้าไป ระบบจะอ่าน คำนวณแล้วก็พิมพ์คำตอบ เช่น

> 5
5
> (+ 10 5)
15
> "hello"
"hello"
> (substring "hello" 1 3)
"el"
> (+ (* 4 5) 2)
22

ไวยากรณ์พื้นฐานของภาษา Racket คือการเรียกฟังก์ชัน:

(ฟังก์ชัน อาร์กิวเมนท์1 อาร์กิวเมนท์2 ...)

เราจะไม่สามารถเขียนวงเล็บเล่น ๆ ได้เลย เช่น ถ้าสั่ง (5) จะได้ error ดังนี้

> (5)
. . application: not a procedure;
 expected a procedure that can be applied to arguments
  given: 5
  arguments...: [none]

แบบฝึกหัด 1

ท่าพื้นฐาน

แบบฝึกหัด 2