Haskell - Tổng quan
Haskell là một Ngôn ngữ lập trình chức năng được thiết kế đặc biệt để xử lý các ứng dụng tính toán biểu tượng và xử lý danh sách. Lập trình hàm dựa trên các hàm toán học. Ngoài Haskell, một số ngôn ngữ phổ biến khác tuân theo mô hình Lập trình chức năng bao gồm: Lisp, Python, Erlang, Racket, F #, Clojure, v.v.
Trong conventional programing, các hướng dẫn được coi là một tập hợp các khai báo theo cú pháp hoặc định dạng cụ thể, nhưng trong trường hợp functional programing, tất cả các tính toán được coi là sự kết hợp của các hàm toán học riêng biệt.
Hoạt động với Haskell
Haskell là một ngôn ngữ thuần chức năng được sử dụng rộng rãi. Ở đây, chúng tôi đã liệt kê ra một vài điểm khiến ngôn ngữ này trở nên đặc biệt so với các ngôn ngữ lập trình thông thường khác như Java, C, C ++, PHP, v.v.
Functional Language- Trong ngôn ngữ lập trình thông thường, chúng tôi hướng dẫn trình biên dịch một loạt các tác vụ không có gì khác ngoài việc cho máy tính của bạn biết "phải làm gì" và "làm như thế nào?" Nhưng trong Haskell, chúng ta sẽ nói với máy tính của mình "nó là gì?"
Laziness- Haskell là một ngôn ngữ lười biếng. Bởilazy, ý của chúng tôi là Haskell sẽ không đánh giá bất kỳ biểu hiện nào mà không có lý do. Khi công cụ đánh giá nhận thấy rằng một biểu thức cần được đánh giá, thì nó sẽ tạo ra mộtthunk data structure để thu thập tất cả thông tin cần thiết cho đánh giá cụ thể đó và một con trỏ đến thunk data structure. Công cụ đánh giá sẽ chỉ bắt đầu hoạt động khi nó được yêu cầu đánh giá biểu hiện cụ thể đó.
Modularity- Một ứng dụng Haskell không có gì khác ngoài một loạt các chức năng. Có thể nói rằng một ứng dụng Haskell là một tập hợp của rất nhiều ứng dụng Haskell nhỏ.
Statically Typed- Trong ngôn ngữ lập trình thông thường, chúng ta cần xác định một loạt các biến cùng với kiểu của chúng. Ngược lại, Haskell là một ngôn ngữ được đánh máy nghiêm ngặt. Theo thuật ngữ, ngôn ngữ được nhập đúng, chúng tôi có nghĩa là trình biên dịch Haskell đủ thông minh để tìm ra loại biến được khai báo, do đó chúng tôi không cần đề cập rõ ràng đến loại biến được sử dụng.
Maintainability - Các ứng dụng Haskell có tính mô-đun và do đó, rất dễ dàng và tiết kiệm chi phí để duy trì chúng.
Các chương trình chức năng đồng thời hơn và chúng tuân theo song song trong quá trình thực thi để cung cấp hiệu suất chính xác hơn và tốt hơn. Haskell không phải là ngoại lệ; nó đã được phát triển theo một cách để xử lýmultithreading một cách hiệu quả.
Chào thế giới
Đó là một ví dụ đơn giản để chứng minh sự năng động của Haskell. Hãy xem đoạn mã sau. Tất cả những gì chúng ta cần chỉ là một dòng để in "Hello Word" trên bảng điều khiển.
main = putStrLn "Hello World"
Khi trình biên dịch Haskell gặp đoạn mã trên, nó sẽ nhanh chóng tạo ra kết quả sau:
Hello World
Chúng tôi sẽ cung cấp nhiều ví dụ trong suốt hướng dẫn này để giới thiệu sức mạnh và sự đơn giản của Haskell.