Hồi Tưởng Về Forth
Điều đầu tiên phải nói đến là triết lý “không có móc cài” (hook). Đừng cố gắng để lại những điểm mở trong mã nguồn, đừng mơ tưởng rằng tương lai khi vấn đề thay đổi sẽ dễ dàng chèn thêm logic mới. Vì thực tế, vấn đề sẽ biến hóa theo những cách mà bạn không thể lường trước. Khi ấy, những cố gắng phòng xa kia chỉ là sự lãng phí vô ích. Hãy từ bỏ thói quen dự đoán, chỉ tập trung giải quyết những vấn đề đang hiển hiện trước mắt. Đây chính là nguyên tắc vàng mà cha đẻ Forth - Charles Moore đã đúc kết.
Cơ duyên nào khiến tôi hôm nay bất ngờ lục lại những tài liệu cũ kỹ về Forth? Có lẽ là do nỗi ám ảnh chưa dứt từ thuở nào. 19 năm về trước, tôi từng say mê Forth đến mức thức trắng đêm, nhưng chỉ mới chạm được vào lớp vỏ bề ngoài. 13 năm trước, ngày đầu tiên bước chân vào thư viện đại học, cuốn sách lập trình đầu tiên tôi mượn chính là “Ngôn ngữ Forth” - với 20 trang ghi chú chi chít.
Phải đến tận hôm nay, khi đã tích lũy đủ kinh nghiệm, tôi mới thực sự thấu hiểu được tinh thần cốt lõi của Forth. Dù chỉ mới dành vài giờ đồng hồ nghiên cứu, nhưng cảm giác như vừa mở cánh cửa đầu tiên dẫn vào thế giới triết học lập trình sâu sắc. Ban đầu tôi định tìm hiểu cơ chế hệ thống Forth để hỗ trợ đồng nghiệp thiết kế hệ thống hạt 3D, nhưng rồi lại bị cuốn vào những suy tư triết lý.
Tình cờ đọc lại bài phỏng vấn Charles Moore năm 1999 với tiêu đề “1x Forth”, tôi bỗng chạnh lòng nhớ đến lời khuyên đã dành cho đồng nghiệp tuần trước. Câu nói ấy gần như nguyên văn, chỉ khác vài từ ngữ nhưng cùng truyền tải một thông điệp: “Hãy đơn giản hóa mọi thứ đến mức không thể đơn giản hơn”.
Dạo này công việc ngập đầu, tôi đành điều chỉnh giờ giấc. Thay vì thức đến tận 12h30 đêm như trước, giờ tôi buộc phải dậy sớm hơn - 10h20 sáng. Kỳ thực, việc này đã “cứu” tôi khỏi những đêm thức trắng, đồng thời nới rộng thêm khoảng 2 tiếng quý giá mỗi ngày.
Đường về nhà có hai chú chó hoang thường xuyên sủa vang khi thấy tôi. Những lần đầu còn giật mình, nhưng dần quen với thói quen của chúng. Chúng sẽ chạy theo tôi suốt đoạn đường, thỉnh thoảng ngoái đầu nhìn như thể kiểm tra xem tôi có phải mối đe dọa không. Có lẽ chúng cũng giống như ngôn ngữ Forth - trực tiếp, không vòng vo, phản ứng ngay lập tức với hiện thực.
Tôi nhớ đến chú cún Poodle của đồng nghiệp. Mỗi sáng tôi đều luộc hai quả trứng, nhưng sau khi bác sĩ cảnh báo cholesterol cao, tôi đã loại bỏ lòng đỏ. Điều kỳ lạ là mỗi lần tôi gõ nhẹ vào quả trứng, chú cún sẽ lập tức chạy đến ngồi trước mặt tôi, đuôi vẫy lia lịa. Nhiều người nuôi chó đều khẳng định lòng đỏ trứng gà là “món thần thánh” với chúng.
Hai hôm nay, tôi cố ý giữ lại lòng đỏ sau khi ăn trứng. Khi gặp hai chú chó hoang, tôi ném chúng một miếng lòng đỏ. Cảm giác thật đặc biệt, như thể tôi đang thực hiện một nghi thức giao thoa giữa thế giới lập trình và tình yêu động vật.
Lúc ấy, trong đầu tôi chợt hiện lên hình ảnh đô đốc Obenstein từ tác phẩm “Seikai no Senki” - người luôn hành động dứt khoát, không để lại đường lui. Có lẽ triết lý Forth và hình tượng này đều dẫn đến cùng một chân lý: Sự đơn giản tột độ chính là đỉnh cao của sự tinh tế.