1 komentar

 
GN⁺ 2024-03-24
Komentar Hacker News
  • Menurutku hal paling keren dari karya ini adalah cara waktu bekerja.
    Karena satu langkah di tiap level dihitung sebagai sangat banyak langkah di level tepat di bawahnya, semakin zoom out rasanya seperti terseret ke dalam pusaran eksponensial di mana satu langkah memakan waktu berhari-hari, bertahun-tahun, bahkan ribuan tahun.
    Namun simulatornya dengan cerdik menyesuaikan kecepatan secara mulus mengikuti zoom, sampai-sampai keberadaan waktu itu sendiri seolah dihapus.
    Akan menarik kalau ada indikator berapa banyak waktu dalam game yang berlalu per 1 detik dunia nyata, tetapi untuk itu harus ditentukan satu level sebagai level “dasar”, yaitu level yang berjalan real-time, dan itu tampaknya akan merusak sifat fraktal keseluruhannya.

    • Dalam tulisan penjelasan implementasinya, setelah menjelaskan konsep pola meta-piksel, mereka memberi tahu “rasio clock” periodisitasnya.
      Kira-kira seperti, “periode pola ini adalah 35328, jadi setelah 35328 generasi berjalan, generasi di level meta maju 1.”
      Penundaan waktu seperti ini bahkan bisa dibilang diperlukan, karena jika kemiripan-diri pola membentang sepanjang waktu dan dua level beroperasi dengan clock yang berbeda, level berikutnya harus diperlambat saat naik untuk menyesuaikan dengan tampilan animasi self-similar dari level sebelumnya.
      Dengan kata lain, struktur level n membutuhkan 35328 pengulangan dari struktur self-similar level n+1, jadi saat menarik n+1 ke tampilan self-similar dari n, n+1 juga harus melambat agar kemiripan-diri berbasis waktunya ikut cocok.
      Kalau begitu, jadi penasaran apakah ada semacam konstanta invariansi waktu yang membuat “kompleksitas komputasi” suatu tampilan tetap konstan di semua level zoom.
    • Yang terutama mengesankan adalah setiap kali zoom out, kita selalu keluar dari bagian sirkuit yang berbeda.
      Jadi rasanya bukan seperti fraktal biasa yang berulang, melainkan seperti melihat berbagai bagian mesin dari sudut waktu yang berbeda.
    • Itu karena gravitasi membuat waktu melambat.
      Semakin tinggi naik, semakin kecil pengaruh gravitasi, sehingga waktu berjalan lebih cepat.
      Referensi: https://en.wikipedia.org/wiki/Gravitational_time_dilation
    • Mungkin bisa saja level awal dibuat real-time, lalu jarum detiknya bergerak lebih lambat di level bawah dan lebih cepat di level atas.
    • Karena grid-nya tak terbatas, seharusnya bisa ada satu level yang sepenuhnya identik hingga seluruh riwayatnya dengan level berikutnya.
      Maka semua level bisa diidentikkan satu sama lain dan pada dasarnya dianggap sebagai level yang sama, sehingga baik ruang maupun waktu menjadi melingkar dalam skala.
      Level tunggal itu tetap bisa saja tidak berulang, baik dalam ruang maupun waktu.
  • Saat pertama kali zoom in, tanpa sadar aku bereaksi, “apa-apaan ini”.
    Sesuatu yang sudah akrab selama lebih dari 20 tahun benar-benar dibalik total, dan ini termasuk salah satu hal paling keren yang kulihat dalam waktu lama.

  • Ini jenis yang harus dijalankan sendiri, bukan cuma dibaca komentarnya.
    Aku hampir saja menutupnya, tapi setelah masuk dan melihatnya, aku benar-benar terpukau.
    Luar biasa.

    • Hanya dengan melihat dan melakukan zoom ke sana kemari saja sudah muncul sangat banyak bahan untuk dipikirkan.
    • Aku setuju bahwa tautannya harus diklik.
      Aku juga biasanya membaca komentar lebih dulu untuk mengecek apakah ada paywall, buang-buang waktu, banner raksasa, atau situs penipuan, baru memutuskan mau klik atau tidak.
      Sebagai gantinya, aku sangat berterima kasih kepada orang-orang yang membaca artikelnya lalu meninggalkan komentar untuk yang lain.
      Setiap kali belajar bahasa baru, aku sudah membuat Game of Life Conway setidaknya belasan kali, dan aku sudah mulai memikirkan bagaimana ini diimplementasikan.
      Tergantung implementasinya, memasukkan beberapa pola contoh yang bisa dipakai pengguna untuk mulai saja sudah merepotkan, tetapi situs ini rasanya seperti menggabungkan hampir semua still life, osilator, dan spaceship dalam jumlah layer tak terbatas.
      Polanya memang tampak berulang, tetapi membangun layer dasarnya saja sudah sangat mengesankan.
    • Sangat merekomendasikan memutar “darude - sandstorm” sambil menggulir.
    • Sepertinya situsnya kewalahan oleh trafik.
      Aku akan coba lagi beberapa hari lagi.
  • Menarik bahwa ini ditulis dengan Haxe.
    Ini bahasa yang baru pertama kali kudengar, dan aku sedang mencari “bahasa hacker” yang hampir bisa masuk ke ceruk apa pun; mungkin ini jawabannya.
    Melihat static typing opsional dan kompilasi ke banyak target (terutama C++), aku kurang paham kenapa bahasa ini tidak lebih populer.
    Kelihatannya seperti bahasa yang sangat praktis, dibuat oleh para perancang yang memahami kebutuhan developer dengan baik.

    • Setahuku Haxe dibuat untuk menggantikan Flash.
      Aku tidak tahu kenapa tidak lebih populer, tetapi cukup banyak orang di komunitas game yang menggunakannya.
    • Haxe adalah bahasa yang cukup mapan, tetapi tidak dikenal luas, dan selalu berada di posisi underdog.
      Meski begitu, bahasanya benar-benar bagus.
      Ada juga macro yang bisa mentransformasi abstract syntax tree (AST), sehingga memungkinkan hal-hal luar biasa dilakukan pada waktu kompilasi.
      Sangat sedikit bahasa yang mendukung fitur semacam ini secara matang.
      Kalau tidak suka Lisp tetapi menginginkan bahasa hacker, Haxe layak dicoba.
    • Alasannya sama seperti kenapa hal-hal yang benar-benar bagus umumnya tidak populer.
      Orang yang pandai membuat sesuatu yang keren biasanya kurang pandai mempromosikannya, sedangkan orang yang pandai membual membuat barang yang rumit tetapi mudah dijual, lalu menciptakan perhatian yang dilebih-lebihkan.
    • Haxe cukup keren, dan kalau belum pernah dipakai, layak dicoba-coba.
      Karena aku tidak membuat game, aku belum banyak memakainya, tetapi rasanya seperti “bagaimana jika ActionScript 3 terus berevolusi setelah keluar dari dunia Flash?”
      Suatu saat aku ingin memakainya lebih banyak dan mungkin membuat sesuatu seperti game.
    • Ini mengingatkanku pada ide-ide lama tentang membuat cara untuk mengikat erat class/logika sisi server PHP dengan sisi klien JS saat membangun situs web dan web app.
      Ini terutama sering terjadi saat membuat form berbasis HTML: meskipun form didefinisikan di PHP, pengalaman pengguna biasanya lebih baik jika bisa berjalan tanpa memuat ulang halaman, jadi biasanya kita mendefinisikan objek TypeScript dan mengirim form lewat Ajax.
      Harus mendefinisikan nama field di kedua sisi itu buruk sekali untuk pemeliharaan, jadi sebagai gantinya aku membuat TypeScript meminta daftar input yang dibutuhkan ke server lewat Ajax.
      Dengan Haxe, pekerjaan seperti ini sepertinya bisa dilakukan jauh lebih rapi: https://haxe.org/use-cases/web/
  • Benar-benar mencengangkan.
    Detail tentang cara kerjanya ada di sini: http://b3s23life.blogspot.com/2006_09_01_archive.html?m=1

  • Keren banget
    Tautan GitHub untuk yang ingin melihat cara kerjanya: https://github.com/saharan/works/tree/main/life

    • Di repositori itu juga ada beberapa simulasi lain yang bagus, tapi yang ini jelas yang terbaik
      Ini yang paling mencengangkan di antara ide Game of Life yang kulihat setelah sekian lama
  • Kadang aku berpikir, jangan-jangan alam semesta kita juga seperti ini
    Kita terus mencari partikel paling dasar, tetapi mungkin saja hal seperti itu tidak ada
    Mungkin semuanya bisa di-zoom tanpa batas, dan kita hanya menyadari level kita sendiri
    Materi tersusun dari materi lain, lalu materi itu juga tersusun lagi dari materi lain, berlanjut tanpa akhir seperti itu
    Dan mungkin ada kehidupan di level lain juga
    Misalnya di dalam elektron, atau bisa jadi kita hidup di dalam makhluk hidup yang jauh lebih raksasa

  • Ada beberapa hal yang terpikir
    Apa yang terjadi kalau nilai sel diubah secara artifisial? Sepertinya akan muncul kekacauan dan perubahan itu akhirnya menyebar ke semua level; aku benar-benar ingin melihatnya
    Selain itu, bisakah tiap sel dibuat sebagai simulasi yang berbeda, tetapi pada zoom yang lebih besar tetap berperilaku seperti Conway's Game of Life? Sepertinya mungkin kalau batasnya dijaga dan ia menyala serta mati pada waktu yang tepat; aku penasaran di mana batasnya

    • Level tempat sel diubah itu akan rusak oleh gelombang kekacauan yang menyebar keluar dari titik kerusakan awal, dan di belakangnya akan tersisa pola “abu” yang membosankan
      Level-level di bawahnya tidak terpengaruh, dan dengan teknologi yang tidak rusak, mereka dengan setia mensimulasikan kekacauan yang terjadi di atas
      Level-level di atasnya tidak lagi mensimulasikan Game of Life
      Bagian yang rusak di level bawah akan terlihat seperti titik buram yang bukan putih maupun hitam, dan akan terus membesar selamanya secara eksponensial makin ke atas, dengan laju yang semakin lambat
    • Jika mengubah nilai sel secara artifisial menimbulkan kekacauan dan perubahannya menyebar ke semua level, apakah ini semacam analogi yang mirip dengan kanker?
      Akan menarik melihat bagaimana ia berkembang, dan apakah muncul efek semacam “perbaikan” atau “sistem imun”
  • Implementasinya benar-benar indah
    Game of Life mungkin adalah simulasi pertama yang kucoba sebagai programmer, dan setelah itu pun selama bertahun-tahun aku sering kembali kepadanya
    Sampai sekarang, setiap kali orang merenungkan hal seperti kesadaran, aku jadi teringat padanya
    Apakah di dalam diri kita ada sesuatu seperti serbuk ajaib, atau kita hanya hasil dari aturan sederhana yang berlangsung di panggung raksasa

    • Mungkin menyenangkan melihat perilaku emergen yang muncul dari eksekusi program 256 byte ini
      Ini adegan ketika pikiran lahir: https://www.youtube.com/watch?v=sWblpsLZ-O8
    • Sama seperti hukum fisika tidak berhenti di batas tengkorak, tidak ada pula yang namanya kedaulatan diri
      Namun tidak ada yang peduli kalau suatu pikiran menganggap dirinya sebagai subjek yang memikirkan pikirannya sendiri
      Sejak awal memang tidak ada siapa pun, hanya ada pikiran
    • Mungkin aturan sederhana itu sendiri adalah “serbuk ajaib”
      Struktur Turing-complete seperti ini muncul di mana-mana, dan dalam banyak hal saling ekuivalen
      Mungkin struktur dasar inilah fondasi metafisika kita, dan realitas hanyalah salah satu node dari kemungkinan permutasinya
      Aturan sederhana Game of Life bisa jadi merupakan pantulan emergen dari sifat fundamental meta-realitas
      Keberadaan pantulan semacam ini di dalam struktur saraf dan struktur makna kita mungkin adalah “serbuk ajaib” yang diperlukan agar kesadaran muncul
  • Ada juga versi keren yang memvisualisasikan Game of Life dalam 3D
    Frame-frame waktu sebelumnya ditumpuk berurutan ke bawah seperti akar yang tumbuh, dan terlihat sebagai animasi dari sudut pandang proyeksi isometrik
    Tidak fraktal seperti karya ini, tetapi jelas berbagi nuansa pertemuan antara seni dan sains
    AlecsForum: https://www.instagram.com/reel/C2hoRnFsmQW/