Skip to main content

Posts

Showing posts with the label guile

In ra màn hình số 1 - dùng ngôn ngữ nào nhanh/nhẹ nhất?

Nếu chỉ cần in ra mà hình số 1, ngôn ngữ lập trình nào sẽ chạy tốn ít RAM nhất? Thí nghiệm sau sẽ cho ta thấy các chương trình cần bao nhiêu RAM để chạy và in ra số 1, kết thúc dòng bằng một dấu xuống dòng (newline \n ). Ta dùng chương trình /usr/bin/time để có cả thông số về RAM ( RSS ) thay vì chỉ gõ time - lệnh builtin của bash. bash4.3 $ /usr/bin/time bash -c 'echo 1' 1 0 .00user 0 .00system 0 :00.00elapsed 100 %CPU ( 0avgtext+0avgdata 3064maxresident ) k 0inputs+0outputs ( 0major+136minor ) pagefaults 0swaps dash $ /usr/bin/time /bin/dash -c 'echo 1' 1 0 .00user 0 .00system 0 :00.00elapsed ?%CPU ( 0avgtext+0avgdata 1492maxresident ) k 0inputs+0outputs ( 0major+67minor ) pagefaults 0swaps mawk $ /usr/bin/time mawk 'BEGIN {print 1}' 1 0 .00user 0 .00system 0 :00.00elapsed 100 %CPU ( 0avgtext+0avgdata 1932maxresident ) k 0inputs+0outputs ( 0major+86minor ) pagefaults 0swaps

[scheme] define, lambda, cond

Với  car, cdr, cons , ở bài trước ta đã có thể làm rất nhiều thứ với Scheme, bài này sẽ giới thiệu cú pháp của "define", "lambda" và "cond", để bạn có thể thỏa sức tưởng tượng với function. "define" để gán một cái tên cho một "object". Ví dụ: scheme@(guile-user)> (define lat '(ga bo heo)) Gán cho "list" '(ga bo heo) cái tên là lat (viết tắt của : list of atoms) Hãy chơi lại với car, cdr, cons scheme@(guile-user)> (car lat) $2 = ga scheme@(guile-user)> (cdr lat) $3 = (bo heo) scheme@(guile-user)> (cons (car lat) (cdr lat)) $4 = (ga bo heo) "null?" là function để kiểm tra list đầu vào có phải là list rỗng không. scheme@(guile-user)> (null? lat)  $5 = #f scheme@(guile-user)> (null? '()) $6 = #t

[scheme] car, cdr và cons

car , cdr và cons là 3 primitive của scheme Từ mới, bạn CHƯA cần phải cố hiểu chúng, cứ đọc nó như một từ mới thôi: car cdr cons primitive S-expression Hãy mở # guile lên và gõ vào rồi sẽ hiểu: CHÚ Ý: dấu single quote trước (1. scheme@(guile-user)> (define li '(1 2 3 4 5)) scheme@(guile-user)> (car li) $8 = 1

[scheme] data type boolean

Loạt bài viết giúp học ngôn ngữ  Scheme, sử dụng Guile. Cố gắng để mọi thứ trở nên dễ hiểu, đơn giản nhất. Để làm theo bài tut này, bạn cần có Guile interpreter. Nếu bạn chưa biết cài và chạy Guile interpreter thế nào, xem ở đây Syntax của Guile không giống C/C++/Java/PHP/Python... nên bạn cứ làm theo là được => hiểu sau. Từ khóa - data type: kiểu dữ liệu - boolean: Tiếng Việt là gì nhỉ??? Bài này viết về data type boolean. Kiểu dữ liệu boolean (đôi khi viết tắt là bool) là kiểu dữ liệu đơn giản chỉ có 2 giá trị : đúng hoặc sai Trong Guile giá trị sai biểu diễn bằng #f giá trị đúng được biểu diễn bởi TẤT CẢ các thứ khác và #t Ví dụ

[scheme] Guile - giới thiệu và cài đặt

Guile là gì?  - Guile là viết tắt của cụm từ GNU Ubiquitous Intelligent Language for Extensions , là ngôn ngữ mở rộng (extension) chính thức cho GNU operating system . - Guile là một library. (Guile is a library designed to help programmers create flexible applications.) - Guile là một ngôn ngữ lập trình. - Guile is an interpreter and compiler for the Scheme programming language, a clean and elegant dialect of Lisp. - Guile is an efficient virtual machine that executes a portable instruction set generated by its optimizing compiler, and integrates very easily with C and C++ application code. ... Theo http://www.gnu.org/software/guile/guile.html Nói chung là, nếu bạn muốn học Scheme thì cài Guile, hết! Làm thế nào để học được cái này, trông khó hiểu quá? Shut up and just do it ! Cách đọc   guile /gʌɪl/ Cài đặt

Popular posts from this blog

Tài liệu và hướng dẫn học Python

Để tiết kiệm thời gian, tốt nhất là đi học PyMI Updated: 130617 Sau đây là các tài liệu khuyên dùng: Vì nhiều lý do, nên học python2.7 tại thời điểm hiện tại (giờ là tháng 6/2013 - muốn biết tại sao thì tự tìm hiểu) python 3.5+ (giờ là tháng 2/2017) Chuẩn bị: 1. biết bật tắt máy 2. biết cài python 3. tập gõ 10 ngón - gõ 2 ngón hay 1 ngón cũng không sao, nhưng 10 ngón là cách dễ nhất để gõ nhanh nhất. Tài liệu - Nên dùng tài liệu tại trang chủ của Python làm chính, tham khảo thêm các tài liệu khác tại http://www.familug.org/2016/12/free-ebook.html Căn bản, mới học 1.1 Python PyMI.vn https://pymi.vn/tutorial/ 1.2. Python offical tutorial kết hợp làm bài tập trên HackerRank  (đề bài bằng tiếng Anh, nhưng Google translate 1 lúc cũng ra vì có nhiều ví dụ mẫu đi kèm). Học viên của Pymi.vn có rất nhiều học viên đã tự học với Learn Python the hard way nhưng chưa thấy ai thành công cả. Hai link dưới nên đọc sau khi đã nắm được những phần cơ bản của ngôn ngữ pytho...

The PyMiers

New FAMILUG