Vinova tuyển lập trình viên Mobile & Web ở Hà Nội, lương $300-1000

Article: Cách build wxWidgets và Erlang trên Mac để có chương trình debugger 97

ngocdaothanh.myopenid.com 174
Updated about 1 month ago

Erlang có chương trình debugger có giao diện đồ họa rất tiện, nhưng vì nó dựa trên wxWidgets và vì lí do gì đó trên Mac nó chỉ build được với wxWidgets 32 bit, nên để chạy được chương trình debugger này trên Mac, phải build cả wxWidgets và Erlang theo chế độ 32 bit. Tất nhiên chẳng ai muốn mua máy 64 bit về để chạy chương trình 32 bit, nhưng vì thường nếu chạy thật thì dùng Linux, còn Mac chỉ dùng để develop, nên build theo chế độ 32 bit để develop cũng không có vấn đề gì.

Dưới đây là hướng dẫn.

Article: Mẹo vặt Erlang 1777

ngocdaothanh.myopenid.com 174
Updated about 1 month ago

Bài viết này đề cập các vấn đề nho nhỏ gặp phải và cách giải quyết khi làm việc với Erlang.

Article: Khủng hoảng đa lõi: Scala vs. Erlang 3038

nguoitapdich.myopenid.com 35
Updated over 2 years ago

Gần đây có cuộc tranh luận nóng bỏng về Scala vs. Erlang qua các trang blog. Tương lai sẽ là đa lõi, nhưng câu hỏi là khủng hoảng đa lõi sẽ được giải quyết thế nào. Scala và Erlang là hai ngôn ngữ có khả năng trở thành lời giải nhất, nhưng chúng hơi khác nhau. Ưu và khuyết của chúng là gì?

rollingstone.myopenid.com 1
over 3 years ago

Đọc bài của đại ca làm em có hứng thú với Erlang rồi. Concurrency-oriented programming là thuật ngữ đáng đồng tiền bát gạo khi bộ xử lý ngày càng nhiều lõi! Không ngờ Erlang lại có lịch sử lâu đời nhưng không thấy nhắc tới nhiều. Em nhập môn thử tìm hiểu cái hay của Erlang xem thế nào!

Article: Đa nhiệm hợp tác vs Đa nhiệm ưu tiên 1519

ngocdaothanh.myopenid.com 174
Updated over 2 years ago

Xu hướng lập trình hiện nay là viết chương trình đa nhiệm (multitasking) để tận dụng tối đa CPU đa lõi. Có 2 cấp độ đa nhiệm: cấp độ hệ điều hành và cấp độ chương trình. Có 2 kiểu đa nhiệm: đa nhiệm hợp tác (cooperative) và đa nhiệm ưu tiên (preemptive). Mục đích bài viết này là giải thích 4 (2x2) khái niệm trên.

Article: Dùng Emacs để viết chương trình Erlang 1876

ngocdaothanh.myopenid.com 174
Updated over 2 years ago

Hiện đã có vài trình soạn thảo hỗ trợ Erlang, như Erlide Emacs. Bài viết này giới thiệu dùng Emacs để viết chương trình Erlang trên Mac OS X, tuy nhiên có thể suy ra cho Windows và Linux.

Article: Đút XML cho Sphinx từ Erlang 1174

ngocdaothanh.myopenid.com 174
Updated over 2 years ago

Sphinx là search engine tốc độ cao có tiếng hiện nay. Một số trang web lớn của Việt Nam như RồngBay.com đã sử dụng thành công Sphinx. Trước đây Sphinx chỉ hỗ trợ SQL DB như MySQL và PostgreSQL, từ phiên bản 0.9.9-rc2 trở đi Sphinx hỗ trợ thêm XML, giúp Sphinx mở rộng thị trường ra rất nhiều. Tiếp theo bài viết về làm từ điểnsearch CJK, bài viết này trình bày cách đút XML từ chương trình Erlang cho Sphinx (ví dụ dữ liệu lấy từ Mnesia), thông qua đó trình bày cách tạo XML từ Erlang. Để hiểu, cần biết sơ sơ Erlang và đọc qua ít nhất một lần tài liệu của Sphinx.

Article: Cách Dùng Tính Năng Backup và Replication của Mnesia 1247

ngocdaothanh.myopenid.com 174
Updated over 2 years ago

Backup dĩ nhiên là tính năng mọi cơ sở dữ liệu đều phải có. Để cải thiện độ tin cậy hoặc tăng tốc độ truy cập của cơ sở dữ liệu người ta thường cần dùng tính năng replication, ví dụ PostgreSQL hơn MySQL nhiều mặt, nhưng chỉ vì PostgreSQL chưa có sẵn tính năng replication mà nhiều người phải bấm bụng dùng MySQL.

Erlang có sẵn Mnesia là cơ sở dữ liệu phân tán, hỗ trợ sẵn multi-master thông qua chiêu thức Xác nhận hai pha. Bài viết này giới thiệu cách dùng tính năng này, để hiểu bạn cần đọc qua ít nhất một quyển sách Erlang.

Article: Lập Trình Web Với Erlang 2327

ngocdaothanh.myopenid.com 174
Updated over 2 years ago

Những ngôn ngữ đã phổ biến như Python, Ruby, PHP, và Java đều có nhiều web framework mạnh. Elang ra đời đã khoảng 20 năm, mặc dù hỗ trợ lập trình mạng tốt hơn hẳn Java nhưng khoản web còn đang chập chững. Hãy thử viết chương trình Hello World để xem xét một số thư viện và framework xem sao.

Có 3 thư viện đáng kể: Inets, Yaws, và MochiWeb. Những thư viện khác ví dụ như IserveMisultin tuy nhanh hơn nhưng đều bé tẹo nên thiếu nhiều tính năng, chỉ thích hợp cho nhiệm vụ đặc biệt nào đó mà thôi. Dựa trên 1 trong 3 thư viện đã vững chắc này, có thể xây dựng ngay chương trình web, hoặc xây dựng framework rồi mới xây dựng chương trình web dựa trên framework. Sau khi xem xét 3 thư viện trên ta xem xét tiếp các framework: Erlang Web, ErlyWeb, Nitrogen, BeepBeep, Ale.

saigon.myopenid.com 8
over 3 years ago

Nếu Erlang đang sử dụng là phiên bản R12 hoặc thấp hơn, khi cài đặt Nitrogen có thể gặp 1 số lỗi:

- Không tìm thấy file eunit.hrl:

Fix: check out: svn co http://svn.process-one.net/contribs/trunk/eunit. Copy folder eunit vào $ERL_LIBS

-Không tìm thấy file escript

Fix: tạo 1 symbolic links: ln -s /usr/lib/erlang/bin/escript  /usr/bin/escript

 

 

Article: Selenium với Erlang, hay câu chuyện về XML và XSLT 1650

ngocdaothanh.myopenid.com 174
Updated over 2 years ago

Cucumber, RSpec, và Selenium là 3 thư viện test de facto đối với Ruby hiện nay. Chúng bổ sung cho nhau, nên khi viết chương trình web bằng Ruby, người ta thường dùng cả 3. Hầu hết ngôn ngữ đều có thư viện tương tự cả 3. Bài viết Cucumber với Erlang đã trình bày cách viết thư viện có tính năng tương tự như Cucumber và RSpec cho Erlang. Mặc dù trên GitHub có project erl_selenium, nhưng Selenium chưa chính thức hỗ trợ sẵn Erlang. Bài viết này giới thiệu cách dùng xmerl để biến đổi XML theo phong cách XSLT thông qua ví dụ về tự viết Erlang client driver cho Selium RC.

Article: Siêu Lập Trình với AST trong Erlang 1264

ngocdaothanh.myopenid.com 174
Updated over 2 years ago

Siêu lập trình (metaprogramming) là thuật ngữ để chỉ việc viết code này để sinh ra code nọ. Theo bài về Leex và Yecc, ngôn ngữ cấp cao thường theo qui trình: (1) mã nguồn, cấu trúc dữ liệu văn bản --> (2) tokens, cấu trúc dữ liệu mảng --> (3) cấu trúc dữ liệu cây thô, có thể chưa đúng cú pháp theo qui định của ngôn ngữ --> (4) AST, cấu trúc dữ liệu cây tuân theo đúng cú pháp của ngôn ngữ --> (5) CST, cấu trúc dữ liệu cây cuối cùng, có thể chạy trên máy ảo (ví dụ tập tin bytecode .class) hoặc máy thật (ví dụ tập tin .exe). Khi viết chương trình gì đó, thường ta viết code có dạng (1), rồi dùng chương trình biên dịch để tự động biến đổi thành dạng (5), chẳng cần quan tâm đến sự tồn tại của các dạng trung gian. Bài viết này giới thiệu chiêu thức viết code này ở dạng (1) để sinh ra code nọ ở dạng (4) trong Erlang. Dĩ nhiên ý tưởng hoàn toàn áp dụng được cho các ngôn ngữ cấp cao khác như Java và Ruby.

Nhà tài trợ:

Mọi người đều tự do viết bài, sửa bài của người khác, và bình luận ở trang web này. Bạn muốn chủ động tạo bài mới để chia sẻ kinh nghiệm với mọi người? Xin click link ở dưới.

Create new content