Tôi nghĩ điều tuyệt nhất trong tác phẩm này là cách thời gian vận hành
Vì một bước ở mỗi cấp được tính bằng vô số bước của cấp ngay bên dưới, nên càng zoom out lại càng có cảm giác rơi vào một vòng xoáy hàm mũ, nơi một bước mất vài ngày, vài năm, rồi vài nghìn năm
Nhưng điểm thông minh là trình mô phỏng điều chỉnh tốc độ mượt theo mức zoom, đến mức xóa luôn cảm giác về sự tồn tại của thời gian
Giá mà có hiển thị thời gian trong game trôi qua bao nhiêu cho mỗi 1 giây ngoài đời, nhưng để làm vậy thì phải chọn một cấp nào đó làm cấp “đáy”, tức cấp chạy theo thời gian thực, và như thế có lẽ sẽ phá vỡ tính fractal của toàn bộ hệ
Trong bài viết giải thích cách triển khai, sau khi giải thích khái niệm mẫu meta pixel, họ cho biết “tỷ lệ clock” của tính chu kỳ
Đại loại là “chu kỳ của mẫu này là 35328, nên sau khi chạy 35328 thế hệ thì thế hệ của cấp meta tiến thêm 1”
Có thể nói kiểu trễ thời gian này là cần thiết, vì nếu tính tự tương đồng của mẫu trải dài theo thời gian và hai cấp hoạt động với clock khác nhau, thì cấp tiếp theo phải chậm lại khi nó hiện lên khớp với góc nhìn hoạt họa tự tương đồng của cấp trước
Nói cách khác, cấu trúc ở cấp n cần 35328 lần lặp của cấu trúc tự tương đồng ở cấp n+1, nên khi kéo n+1 lên thành góc nhìn tự tương đồng của n, n+1 cũng phải chậm lại để khớp cả tính tự tương đồng theo thời gian
Nếu vậy thì cũng khiến tôi tò mò liệu có một kiểu hằng số bất biến theo thời gian nào đó, trong đó “độ phức tạp tính toán” của một góc nhìn được giữ không đổi ở mọi mức zoom hay không
Điều đặc biệt ấn tượng là mỗi lần zoom out, bạn luôn thoát ra từ một phần khác của mạch
Vì thế nó không có cảm giác như một fractal lặp lại bình thường, mà để lại cảm giác như đang nhìn nhiều bộ phận của một cỗ máy từ các góc độ thời gian khác nhau
Có lẽ chỉ cần đặt cấp bắt đầu là thời gian thực, rồi quy định kim giây chạy chậm hơn ở cấp bên dưới và nhanh hơn ở cấp bên trên là được chăng
Vì lưới là vô hạn, nên hẳn cũng có thể có một cấp nào đó hoàn toàn giống hệt cấp tiếp theo, kể cả toàn bộ lịch sử
Khi đó có thể đồng nhất mọi cấp với nhau và thực chất xem chúng như cùng một cấp, còn cả không gian lẫn thời gian đều trở thành vòng tròn theo thang đo
Dù vậy, cấp duy nhất đó vẫn có thể không lặp lại trong cả không gian lẫn thời gian
Lần đầu zoom in, tôi đã vô thức thốt lên “cái quái gì thế này”
Nó lật ngược hoàn toàn thứ tôi đã quen thuộc hơn 20 năm, và là một trong những thứ ngầu nhất tôi thấy sau một thời gian dài
Đây là loại mà đừng chỉ đọc bình luận, phải tự chạy thử
Tôi suýt đóng lại, nhưng vào xem rồi thì hoàn toàn sững sờ
Thật sự tuyệt vời
Chỉ nhìn và zoom qua lại thôi cũng đã có vô số thứ để suy nghĩ
Tôi đồng ý là nên nhấp vào liên kết
Tôi cũng thường đọc bình luận trước để xem có paywall, lãng phí thời gian, banner khổng lồ hay trang lừa đảo gì không rồi mới quyết định có nhấp hay không
Ngược lại, tôi rất biết ơn những người đọc bài rồi để lại bình luận cho phần còn lại
Mỗi lần học một ngôn ngữ mới, tôi đã làm Game of Life của Conway ít nhất cả chục lần, và tôi đã bắt đầu nghĩ xem thứ này được triển khai như thế nào
Tùy cách triển khai, chỉ thêm vài mẫu ví dụ để người dùng bắt đầu cũng đã phiền rồi, còn trang này dường như gần như đã kết hợp các still life, oscillator và spaceship thành vô hạn lớp
Mẫu trông có vẻ lặp lại, nhưng chỉ riêng việc dựng được lớp cơ sở đã cực kỳ ấn tượng
Rất khuyên bật “darude - sandstorm” trong lúc cuộn
Có vẻ trang đang bị nghẽn vì lưu lượng truy cập
Tôi định thử lại sau vài ngày
Thật thú vị khi nó được viết bằng Haxe
Đây là ngôn ngữ tôi mới nghe lần đầu; tôi vốn đang tìm một “ngôn ngữ của hacker” có thể chen vào gần như mọi ngách, và có lẽ đây chính là nó
Nhìn vào kiểu tĩnh tùy chọn và khả năng biên dịch sang nhiều đích, đặc biệt là C++, tôi không hiểu lắm vì sao nó không phổ biến hơn
Nó trông như một ngôn ngữ rất thực dụng, do những nhà thiết kế hiểu rõ nhu cầu của lập trình viên tạo ra
Theo tôi biết thì Haxe được tạo ra để thay thế Flash
Tôi không biết vì sao nó không phổ biến hơn, nhưng trong cộng đồng game cũng có khá nhiều người dùng
Haxe là một ngôn ngữ khá vững chỗ đứng nhưng không được biết đến rộng rãi, và luôn ở vị thế kẻ yếu
Dù vậy nó hoàn toàn tuyệt vời
Nó còn có macro có thể biến đổi cây cú pháp trừu tượng (AST), cho phép làm những việc đáng kinh ngạc ở thời điểm biên dịch
Rất ít ngôn ngữ hỗ trợ tính năng như vậy một cách trưởng thành
Nếu bạn ghét Lisp nhưng muốn một ngôn ngữ của hacker, Haxe đáng để thử
Cũng giống lý do vì sao những thứ thật sự tốt thường không phổ biến
Những người giỏi tạo ra thứ hay ho lại kém trong việc làm nó nổi bật, còn ngược lại những người giỏi khoác lác thì tạo ra các món phức tạp nhưng dễ bán và thổi phồng sự chú ý
Haxe khá tuyệt, và nếu chưa thử thì đáng để nghịch qua
Tôi không làm game nên chưa dùng nhiều, nhưng nó có cảm giác như “nếu ActionScript 3 rời khỏi thế giới Flash và tiếp tục tiến hóa thì sao?”
Một ngày nào đó tôi muốn dùng nó nhiều hơn và thử làm thứ gì đó như game
Điều này làm tôi nhớ đến những ý tưởng cũ khi muốn tạo ra cách liên kết chặt giữa các class/logic phía server PHP và phía client JS khi xây website và web app
Tôi đặc biệt hay gặp chuyện này khi làm form dựa trên HTML: dù định nghĩa form trong PHP, để trải nghiệm người dùng tốt hơn thì thường vẫn định nghĩa object TypeScript rồi gửi form bằng Ajax để không phải tải lại trang
Việc phải định nghĩa tên trường ở cả hai bên là cơn ác mộng bảo trì, nên thay vào đó tôi để TypeScript yêu cầu server qua Ajax danh sách input cần thiết
Với Haxe, có vẻ những việc như vậy có thể làm gọn gàng hơn nhiều: https://haxe.org/use-cases/web/
Trong repo đó còn có vài mô phỏng khá hay khác, nhưng cái này rõ ràng là đỉnh nhất
Một trong những ý tưởng Game of Life đáng kinh ngạc nhất mà tôi thấy sau một thời gian dài
Thỉnh thoảng tôi nghĩ liệu vũ trụ của chúng ta có phải cũng như thế này không
Chúng ta cứ tiếp tục tìm các hạt cơ bản nhất, nhưng có lẽ thứ đó không tồn tại
Có thể mọi thứ đều có thể zoom vô hạn, và chúng ta chỉ nhận thức được cấp độ của mình
Vật chất được tạo nên từ một dạng vật chất khác, rồi dạng vật chất đó lại được tạo nên từ dạng vật chất khác nữa, cứ thế kéo dài vô hạn
Và ở các cấp độ khác cũng có thể có sự sống
Chẳng hạn bên trong electron, hoặc chúng ta đang sống bên trong một sinh vật khổng lồ hơn rất nhiều
Tôi có vài suy nghĩ
Nếu cố ý thay đổi giá trị của một ô thì chuyện gì sẽ xảy ra? Có vẻ sẽ sinh ra hỗn loạn và biến đổi cuối cùng sẽ lan truyền tới mọi cấp độ; tôi thật sự muốn xem điều đó
Ngoài ra, liệu có thể làm cho mỗi ô là một mô phỏng khác nhau nhưng khi zoom ra lớn hơn thì vẫn hoạt động như Game of Life của Conway không? Nếu giữ được ranh giới và bật/tắt đúng thời điểm thì có vẻ khả thi, và tôi tò mò giới hạn nằm ở đâu
Cấp độ nơi ô bị thay đổi sẽ bị phá hủy bởi làn sóng hỗn loạn lan ra từ điểm hư hại ban đầu, và phía sau sẽ còn lại một mẫu “tro tàn” tẻ nhạt
Các cấp độ bên dưới sẽ không bị ảnh hưởng, và bằng công nghệ chưa hỏng, chúng sẽ mô phỏng trung thành sự hỗn loạn đang diễn ra phía trên
Các cấp độ phía trên sẽ không còn mô phỏng Game of Life nữa
Phần bị hỏng ở cấp độ bên dưới sẽ trông như một điểm mờ không phải trắng cũng chẳng phải đen, và càng lên cao nó sẽ càng lớn dần mãi mãi theo cấp số nhân nhưng chậm hơn
Nếu khi cố ý thay đổi giá trị ô mà hỗn loạn sinh ra và biến đổi lan truyền tới mọi cấp độ, thì đây có phải là một phép ẩn dụ giống ung thư không?
Sẽ rất thú vị nếu xem nó diễn tiến ra sao, và liệu có xuất hiện hiệu ứng kiểu “sửa chữa” hay “hệ miễn dịch” nào không
Được triển khai thật sự đẹp
Game of Life có lẽ là mô phỏng đầu tiên tôi thử làm với tư cách lập trình viên, và sau đó nhiều năm tôi vẫn thường quay lại với nó
Đến giờ, mỗi khi người ta suy ngẫm về những thứ như ý thức, tôi vẫn nghĩ tới nó
Liệu trong chúng ta có một thứ gì đó như bột phép, hay chỉ là kết quả của những quy tắc đơn giản diễn ra trên một sân khấu khổng lồ?
Có thể bạn sẽ thấy thú vị khi nhìn hành vi nổi lên trong lần chạy chương trình 256 byte này
Đây là cảnh một tâm trí được sinh ra: https://www.youtube.com/watch?v=sWblpsLZ-O8
Cũng như các định luật vật lý không dừng lại ở ranh giới của hộp sọ, không có thứ gọi là chủ quyền của cái tôi
Nhưng nếu một ý nghĩ tự xem mình là chủ thể đang suy nghĩ của chính nó thì cũng chẳng ai bận tâm
Ngay từ đầu đã không có ai cả, chỉ có những ý nghĩ mà thôi
Có lẽ chính các quy tắc đơn giản mới là “bột phép”
Những cấu trúc Turing-complete như thế này xuất hiện ở khắp nơi, và trên nhiều phương diện chúng tương đương với nhau
Có lẽ cấu trúc nền tảng này là cơ sở của siêu hình học của chúng ta, và thực tại chỉ là một nút trong các khả năng hoán vị của nó
Các quy tắc đơn giản của Game of Life có thể là sự phản chiếu nổi lên của bản chất căn bản của siêu thực tại
Việc sự phản chiếu như vậy tồn tại trong cấu trúc thần kinh và cấu trúc ý nghĩa của chúng ta có lẽ chính là “bột phép” cần thiết để ý thức nảy sinh
Cũng có một phiên bản rất hay trực quan hóa Game of Life bằng 3D
Các khung thời gian trước đó được xếp tuần tự xuống phía dưới như rễ cây đang mọc, và được hiển thị dạng animation từ góc nhìn đẳng cự
Nó không phải fractal như tác phẩm này, nhưng chắc chắn có cùng cảm giác nơi nghệ thuật và khoa học gặp nhau
AlecsForum: https://www.instagram.com/reel/C2hoRnFsmQW/
1 bình luận
Ý kiến trên Hacker News
Tôi nghĩ điều tuyệt nhất trong tác phẩm này là cách thời gian vận hành
Vì một bước ở mỗi cấp được tính bằng vô số bước của cấp ngay bên dưới, nên càng zoom out lại càng có cảm giác rơi vào một vòng xoáy hàm mũ, nơi một bước mất vài ngày, vài năm, rồi vài nghìn năm
Nhưng điểm thông minh là trình mô phỏng điều chỉnh tốc độ mượt theo mức zoom, đến mức xóa luôn cảm giác về sự tồn tại của thời gian
Giá mà có hiển thị thời gian trong game trôi qua bao nhiêu cho mỗi 1 giây ngoài đời, nhưng để làm vậy thì phải chọn một cấp nào đó làm cấp “đáy”, tức cấp chạy theo thời gian thực, và như thế có lẽ sẽ phá vỡ tính fractal của toàn bộ hệ
Đại loại là “chu kỳ của mẫu này là 35328, nên sau khi chạy 35328 thế hệ thì thế hệ của cấp meta tiến thêm 1”
Có thể nói kiểu trễ thời gian này là cần thiết, vì nếu tính tự tương đồng của mẫu trải dài theo thời gian và hai cấp hoạt động với clock khác nhau, thì cấp tiếp theo phải chậm lại khi nó hiện lên khớp với góc nhìn hoạt họa tự tương đồng của cấp trước
Nói cách khác, cấu trúc ở cấp n cần 35328 lần lặp của cấu trúc tự tương đồng ở cấp n+1, nên khi kéo n+1 lên thành góc nhìn tự tương đồng của n, n+1 cũng phải chậm lại để khớp cả tính tự tương đồng theo thời gian
Nếu vậy thì cũng khiến tôi tò mò liệu có một kiểu hằng số bất biến theo thời gian nào đó, trong đó “độ phức tạp tính toán” của một góc nhìn được giữ không đổi ở mọi mức zoom hay không
Vì thế nó không có cảm giác như một fractal lặp lại bình thường, mà để lại cảm giác như đang nhìn nhiều bộ phận của một cỗ máy từ các góc độ thời gian khác nhau
Càng lên cao thì càng ít chịu ảnh hưởng của trọng lực, nên thời gian trôi nhanh hơn
Tham khảo: https://en.wikipedia.org/wiki/Gravitational_time_dilation
Khi đó có thể đồng nhất mọi cấp với nhau và thực chất xem chúng như cùng một cấp, còn cả không gian lẫn thời gian đều trở thành vòng tròn theo thang đo
Dù vậy, cấp duy nhất đó vẫn có thể không lặp lại trong cả không gian lẫn thời gian
Lần đầu zoom in, tôi đã vô thức thốt lên “cái quái gì thế này”
Nó lật ngược hoàn toàn thứ tôi đã quen thuộc hơn 20 năm, và là một trong những thứ ngầu nhất tôi thấy sau một thời gian dài
Đây là loại mà đừng chỉ đọc bình luận, phải tự chạy thử
Tôi suýt đóng lại, nhưng vào xem rồi thì hoàn toàn sững sờ
Thật sự tuyệt vời
Tôi cũng thường đọc bình luận trước để xem có paywall, lãng phí thời gian, banner khổng lồ hay trang lừa đảo gì không rồi mới quyết định có nhấp hay không
Ngược lại, tôi rất biết ơn những người đọc bài rồi để lại bình luận cho phần còn lại
Mỗi lần học một ngôn ngữ mới, tôi đã làm Game of Life của Conway ít nhất cả chục lần, và tôi đã bắt đầu nghĩ xem thứ này được triển khai như thế nào
Tùy cách triển khai, chỉ thêm vài mẫu ví dụ để người dùng bắt đầu cũng đã phiền rồi, còn trang này dường như gần như đã kết hợp các still life, oscillator và spaceship thành vô hạn lớp
Mẫu trông có vẻ lặp lại, nhưng chỉ riêng việc dựng được lớp cơ sở đã cực kỳ ấn tượng
Tôi định thử lại sau vài ngày
Thật thú vị khi nó được viết bằng Haxe
Đây là ngôn ngữ tôi mới nghe lần đầu; tôi vốn đang tìm một “ngôn ngữ của hacker” có thể chen vào gần như mọi ngách, và có lẽ đây chính là nó
Nhìn vào kiểu tĩnh tùy chọn và khả năng biên dịch sang nhiều đích, đặc biệt là C++, tôi không hiểu lắm vì sao nó không phổ biến hơn
Nó trông như một ngôn ngữ rất thực dụng, do những nhà thiết kế hiểu rõ nhu cầu của lập trình viên tạo ra
Tôi không biết vì sao nó không phổ biến hơn, nhưng trong cộng đồng game cũng có khá nhiều người dùng
Dù vậy nó hoàn toàn tuyệt vời
Nó còn có macro có thể biến đổi cây cú pháp trừu tượng (AST), cho phép làm những việc đáng kinh ngạc ở thời điểm biên dịch
Rất ít ngôn ngữ hỗ trợ tính năng như vậy một cách trưởng thành
Nếu bạn ghét Lisp nhưng muốn một ngôn ngữ của hacker, Haxe đáng để thử
Những người giỏi tạo ra thứ hay ho lại kém trong việc làm nó nổi bật, còn ngược lại những người giỏi khoác lác thì tạo ra các món phức tạp nhưng dễ bán và thổi phồng sự chú ý
Tôi không làm game nên chưa dùng nhiều, nhưng nó có cảm giác như “nếu ActionScript 3 rời khỏi thế giới Flash và tiếp tục tiến hóa thì sao?”
Một ngày nào đó tôi muốn dùng nó nhiều hơn và thử làm thứ gì đó như game
Tôi đặc biệt hay gặp chuyện này khi làm form dựa trên HTML: dù định nghĩa form trong PHP, để trải nghiệm người dùng tốt hơn thì thường vẫn định nghĩa object TypeScript rồi gửi form bằng Ajax để không phải tải lại trang
Việc phải định nghĩa tên trường ở cả hai bên là cơn ác mộng bảo trì, nên thay vào đó tôi để TypeScript yêu cầu server qua Ajax danh sách input cần thiết
Với Haxe, có vẻ những việc như vậy có thể làm gọn gàng hơn nhiều: https://haxe.org/use-cases/web/
Thật sự đáng kinh ngạc
Có thêm chi tiết về cách nó hoạt động ở đây: http://b3s23life.blogspot.com/2006_09_01_archive.html?m=1
Cực kỳ ấn tượng
Link GitHub cho những ai muốn xem nó hoạt động thế nào: https://github.com/saharan/works/tree/main/life
Một trong những ý tưởng Game of Life đáng kinh ngạc nhất mà tôi thấy sau một thời gian dài
Thỉnh thoảng tôi nghĩ liệu vũ trụ của chúng ta có phải cũng như thế này không
Chúng ta cứ tiếp tục tìm các hạt cơ bản nhất, nhưng có lẽ thứ đó không tồn tại
Có thể mọi thứ đều có thể zoom vô hạn, và chúng ta chỉ nhận thức được cấp độ của mình
Vật chất được tạo nên từ một dạng vật chất khác, rồi dạng vật chất đó lại được tạo nên từ dạng vật chất khác nữa, cứ thế kéo dài vô hạn
Và ở các cấp độ khác cũng có thể có sự sống
Chẳng hạn bên trong electron, hoặc chúng ta đang sống bên trong một sinh vật khổng lồ hơn rất nhiều
Tôi có vài suy nghĩ
Nếu cố ý thay đổi giá trị của một ô thì chuyện gì sẽ xảy ra? Có vẻ sẽ sinh ra hỗn loạn và biến đổi cuối cùng sẽ lan truyền tới mọi cấp độ; tôi thật sự muốn xem điều đó
Ngoài ra, liệu có thể làm cho mỗi ô là một mô phỏng khác nhau nhưng khi zoom ra lớn hơn thì vẫn hoạt động như Game of Life của Conway không? Nếu giữ được ranh giới và bật/tắt đúng thời điểm thì có vẻ khả thi, và tôi tò mò giới hạn nằm ở đâu
Các cấp độ bên dưới sẽ không bị ảnh hưởng, và bằng công nghệ chưa hỏng, chúng sẽ mô phỏng trung thành sự hỗn loạn đang diễn ra phía trên
Các cấp độ phía trên sẽ không còn mô phỏng Game of Life nữa
Phần bị hỏng ở cấp độ bên dưới sẽ trông như một điểm mờ không phải trắng cũng chẳng phải đen, và càng lên cao nó sẽ càng lớn dần mãi mãi theo cấp số nhân nhưng chậm hơn
Sẽ rất thú vị nếu xem nó diễn tiến ra sao, và liệu có xuất hiện hiệu ứng kiểu “sửa chữa” hay “hệ miễn dịch” nào không
Được triển khai thật sự đẹp
Game of Life có lẽ là mô phỏng đầu tiên tôi thử làm với tư cách lập trình viên, và sau đó nhiều năm tôi vẫn thường quay lại với nó
Đến giờ, mỗi khi người ta suy ngẫm về những thứ như ý thức, tôi vẫn nghĩ tới nó
Liệu trong chúng ta có một thứ gì đó như bột phép, hay chỉ là kết quả của những quy tắc đơn giản diễn ra trên một sân khấu khổng lồ?
Đây là cảnh một tâm trí được sinh ra: https://www.youtube.com/watch?v=sWblpsLZ-O8
Nhưng nếu một ý nghĩ tự xem mình là chủ thể đang suy nghĩ của chính nó thì cũng chẳng ai bận tâm
Ngay từ đầu đã không có ai cả, chỉ có những ý nghĩ mà thôi
Những cấu trúc Turing-complete như thế này xuất hiện ở khắp nơi, và trên nhiều phương diện chúng tương đương với nhau
Có lẽ cấu trúc nền tảng này là cơ sở của siêu hình học của chúng ta, và thực tại chỉ là một nút trong các khả năng hoán vị của nó
Các quy tắc đơn giản của Game of Life có thể là sự phản chiếu nổi lên của bản chất căn bản của siêu thực tại
Việc sự phản chiếu như vậy tồn tại trong cấu trúc thần kinh và cấu trúc ý nghĩa của chúng ta có lẽ chính là “bột phép” cần thiết để ý thức nảy sinh
Cũng có một phiên bản rất hay trực quan hóa Game of Life bằng 3D
Các khung thời gian trước đó được xếp tuần tự xuống phía dưới như rễ cây đang mọc, và được hiển thị dạng animation từ góc nhìn đẳng cự
Nó không phải fractal như tác phẩm này, nhưng chắc chắn có cùng cảm giác nơi nghệ thuật và khoa học gặp nhau
AlecsForum: https://www.instagram.com/reel/C2hoRnFsmQW/