• tek hücreli otomobiller için kullanılan tanımlama.. bu tür otomobillerin, toplam iç hacmi*, yaşanılacak bölge alanına eşite yakındır... örneğin (bkz: renault twingo) (bkz: renault scenic) (bkz: renault espace)
  • android için txt editörü.
  • 1k demo alanında assembly 2020'de ribbon'a birinciliği getiren sağlam javascript demo.

    demonun genel tasarımı (ve ismi) tren istasyonlarında vs. gördüğümüz dijital tabelalardaki flip dot yazı sisteminden esinlenilmiş. üç dakika süren demo siyahtan açık griye uzanan gradient üzerinde beliren antialias'lı baloncuklarla beraber eskilerin pc speaker'ından gelen (yeni pc'lerde pc speaker var mı ya?) seslerle açılıyor ancak sesler daha sonradan kulağa daha hoş gelen bir frekansa geçiyor. hemen ardından ekrana bazı matematiksel fonksiyonlar beliriyor ve bir text to speech algoritması bunları seslendiriyor. bu arada arka plandaki baloncuklar rastgelelikten ziyade daha matematiksel şekiller oluşturuyorlar. bir çiçeğin açması ya da akıp giden kareler gibi. bu karelerin akışı sırasında üzerlerinden geçiktileri noktalarla belirlenmiş matris üzerindeki blur efektleri oldukça smooth ve hoş.

    bu ana kadar siyah beyaz ilerleyen demo bir anda renkleniyor ve oldukça hoş yeşil-turkuaz bir temaya bürünürken tüm bu animasyonun oturduğu zemin de akışkan/plazmatik bir yapıya kavuşuyor. bu sırada tüm düzlemin kenarlarını/bitiş noktaları oluşturan bölümler hoş bir blur ile gözden kayboluyorlar ve buralardaki renkler de ekranın dışında kalan, görmediğimiz bir düzlemde değişik renk ve hareketlerle animasyonun devam ettiği hissini yaratıyor.

    demo'nun kapanışında ilk siyah beyaz düzleme geri dönüyoruz ve baloncuklar serbestçe fruko gazozunun içinde yolculuk edermiş gibi takılıyorlar ve robotik konuşma the end mesajını veriyor.

    assembly 2020'nin tüm compo'larında en yüksek puanlardan birini alan bu demo'nun haklı bir galibiyeti var. minify edilmiş hali 1021 byte tutan bu demo'nun javascript kaynak kodu şu şekilde:

    d=[2280,1280,1520,c.width=1920,document.body.style.font="0px monospace"],g=new audiocontext,o=g.createscriptprocessor(4096,document.body.style.margin=t=n=0,1),o.connect(g.destination),o.onaudioprocess=o=>{o=o.outputbuffer.getchanneldata(e=math.sin(t/16%1,m=math.sin(math.min(1,y=t/128)*math.pı)**.5+.1,c.height=1080,b.shadowoffsety=32420,c.style.background="radial-gradient(#"+[222,222,222,222,155,155,102,102][t/16&7]+",black",b.font="920 32px monospace",f=[(x,y,t)=>x/y*2-t,(x,y,t)=>(x**2+y**2)**.5-t,(x,y,t)=>x/4^y/4-t,(x,y,t)=>y%x-t][t/16&3],u=""+[[,f,f," can you hear me",f,f,,"monospace","the end"][t/16|0]],t>n&&speechsynthesis.speak(new speechsynthesisutterance(u,n+=16))));for(i=0;4096>4*i;i++)g[i]=r=(f(x=16-i%32,a=16-(i/32|0),t)/2&1)+(g[i]||0)/2,x+=o[0]/4+4*(1-m**.3)*math.sin(i+t+8),a+=o[64]/4+4*(1-m**.3)*math.sin(i+t),h=x*math.sin(y*2+8)+a*math.sin(y*2),p=4096/(m*32+4*h*math.sin(e)+t%16),b.beginpath(f[i]=r/p),b.arc(h*math.sin(e+8)*p+1280,x*math.sin(y*2)*p-a*math.sin(y*2+8)*p-31920,p>0&&p/(2+32-r*16),0,8),b.shadowblur=o[0]**2*32+32-m*32+4+h*h/2,b.shadowcolor="hsl("+[f(x,y,t)&2?t-a*8:180,(t&64)*m+"%",(t&64)*m+"%"],b.fill();b.shadowblur=o[0]**2*32,b.shadowcolor="#fee";for(i=0;4096>i;i++)o[i]=o[i]/2+((math.sin(t*d[t/[4,4,4,4,1/4,1/4,16,4][t/16&7]&3]*math.pı)*8+(t*d[t/8&3]/2&6)+t*d[t/16&3]/4%6)/64+f[i/4|0])*m,64>i&t%16*6>i&&b.filltext([u[i+(o[i]*2&1)]],i%9*32+o[0]*16+180,(i/9|0)*64+o[64]*16-t-31920),t+=1/g.samplerate}

    coder kaynak kodun deflate algoritması ile sıkıştırılarak 1021 byte düzeyine düşebilmesi için özel bir çaba göstermiş. kodu ilk byte'ınden son byte'ına dek bir akış (bkz: stream) olarak düşünerek yan yana gelen byte'ları gruplandırıldıklarında en yüksek sıkıştırma oranına ulaşacakları şekilde orijinal kodu yazmış. bunun için de bütün kaynak kodu karşısına aldığında oluşan sıkıştırma gruplarını soğuk/orta/sıcak olarak tanımlamış. soğuk kod blokları toplu halde sıkıştırıldıklarında minimum byte kullanırken sıcaklarda sıkıştırma çok az ya da hiç olmuyor. tabii ki kodu elinden geldiğince soğuk tutmaya özen göstermiş. sıkıştırmada png bootstrapping denen bir teknikten faydalanmış. bir de animasyonlarda html5'in shadowblur'undan son damlasına kadar faydalandığını söylüyor.

    monospace yıllardır varolan bir bug'dan dolayı firefox'ta çalışmıyor. chromium/webkit bir tarayıcı kullanmalısınız.

    link'i şurada:
    http://www.p01.org/monospace/

    bir de bu tarz demoların zip dosyalarını bulup indirdiğinizde içlerinden hala file_id.diz dosyası çıkabiliyor.
hesabın var mı? giriş yap