Steve Jobs ile başlayıp Dennis Ritchie ile devam eden Ekim ayı giderayak LISP'in (evet o zamanlar büyük harfle yazılıyordu) babası, yapay zeka alanının yılmaz araştırmacısı John McCarthy'yi de yanında götürmeye karar vermiş. Ne diyelim, Siri ile dertleşirken kendisinin babaannesi Eliza'yı ve bu ailenin ortaya çıkmasında büyük emeği olan McCarthy'yi de unutmazsınız umarım.
Tue, 25 Oct 2011
Thu, 13 Oct 2011
İnsanlığın başına gelen en büyük iki baş belası olan C Programlama Dili ve UNIX'in yaratıcısı Dennis MacAllstair Ritchie artık yok. Acaba kendisine saygı duruşu olarak yarattığı teknolojileri kullanan bütün sistemlerimizi bir dakikalığına kapatsak mı? Bir düşünün bakalım, C ve UNIX kullanan herşey sadece birkaç dakika topluca kapansa dünya nasıl bir yer olurdu?
Tue, 21 Jun 2011
Görünüşe bakılırsa Bilgi Bilgisayar Bilimleri (hani şu kapatılan) trendleri yakından takip ediyor. İyi seyirler.
İlerleyen haftalardaki sunumlar için cs-discuss ve cs-announce'u takip etmeyi unutmayın. (ipucu: Kuşlar bana bu Perşembe devamı yapılacak dedi.)
Sun, 08 May 2011
İşte yine yılın o zamanı geldi. Bir blog post ile daha karşınızdayım. Bu seferki konumuz TC kimlik numarası doğrulamak. Aşağıdaki kod parçası ile verilen bir TC kimlik numarasının geçerli olup olmadığını kontrol edebiliyorsunuz. Tabii Haskell elegansıyla. Bon appétit.
(^!) :: Integer -> Integer -> Integer n ^! m = (n `mod` 10^m) `div` 10^(m-1) evenDigits n = [n ^! k | k <- [2,4..]] oddDigits n = [n ^! k | k <- [1,3..]] tckimlikHashes n = (tenthHash, eleventhHash) where oddSum = sum $ take 5 $ tail $ oddDigits n evenSum = sum $ take 4 $ tail $ evenDigits n tenthHash = (7*oddSum - evenSum) `mod` 10 eleventhHash = ((oddSum + evenSum + tenthHash) `mod` 10) tckimlikVerify n = ((n ^! 2) == x) && ((n ^! 1) == y) where (x,y) = tckimlikHashes n
Not: Bu kod parçasıyla yapılabilecek başka şeyler de var tabii. Onları da yaratıcılığınıza bırakıyorum.
Sun, 10 Aug 2008
Bence Common Lisp versiyonundan daha güzel.
module Main where import System.Time tdiff d = do now <- getClockTime return $ diffClockTimes d now safak = toClockTime (CalendarTime 2008 September 16 0 0 0 0 Tuesday 0 "" 0 True) main = tdiff safak >>= return . (timeDiffToString . normalizeTimeDiff) >>= print
tonguc@terra:~% runhaskell Main.hs "1 month, 6 days, 6 hours, 16 mins, 20 secs" tonguc@terra:~%