lisp etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
lisp etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

12 Temmuz 2010 Pazartesi

Haskell ve Lispte İşletim Sistemi Olur Mu?

Olmamı hiç?? Haskell ile yapılmış olanları zaten biliyordum.

House:
http://web.cecs.pdx.edu/~kennyg/house/
http://ogi.altocumulus.org/~hallgren/ICFP2005/

Kinetic diye de bir peoje var ancak asıl olarak işletim sistemini c ve assembly
ile yazmış sadece driverları haskell ile yazmış.

http://intoverflow.wordpress.com/kinetic/

Volkan da lisp için örnek verdi böylece

http://common-lisp.net/project/movitz/

projesinden haberdar olduk. Ben floppy imagını indirip denedim. Bol bol parantezlerle merhaba diyor çekirdek sonra kabuk olarak bir lisp yorumlayıcısı açıyor. Yorumlayıcının kod tamamlama ve *nix sistemlerden alıştığımız C-p C-a gibi kısayolları mevcut. Eğlenceli duruyor biraz kurcalayıp low-level fonksiyonlarıyla birşeyler yapmak lazım.

Movitz ile yazılmış kernelin bir de ekran görüntüsünü koyayım:

Ankara Lisp Buluşması

Ankara lisp buluşması gayet keyifli geçti. Lisp buluşmasından daha çok fonksiyonel programlama buluşması oldu. Bunun da güzel getirileri oldu bir çok programlama dilinden bahsettik. Kötü ve eksik yanları ve beraberinde güzel yanlarından bahsettik.

Bir atölye oluşturma kararı aldık. Atölyede sadece lisp değil aynı zamanda haskell gibi diğer fonksiyonel programlama dilleri de kullanılarak fonksiyonel programlama üzerine hem eğitici hem de eğlendirici bazı uygulamalar yapacağız.

Bazı sunumlar yapmayı planlıyoruz.

Fotoğraf çekmeyi unuttuk. Olsun bir dahakine artık. Haberdar olupta kararsız kalıp gelmeyenler üzülebilirler. Güzeldi hoştu ne diyim artık üretme zamanı.

9 Temmuz 2010 Cuma

cs-lisp Ankara Tanışma Buluşması

Buraya biraz geç yazmış olacağım ama yazayım gene de. Zati okuyan kimse yok ama olsun.
Ankarada olan lisp ve/veya fonksiyonel progamlama ile ilgilenen insanlar olarak buluşalım tanışalım kaynaşıp kahve kaynatalım dedik. Gelmek isteyenler:

Tarih: 11 Temmuz Pazar
Saat: 15:00
Yer: Thenedos Cafe

9 Haziran 2010 Çarşamba

Emacs'ım Artıkın Daha Yakışıklı

Saat de sabahın 6 sı oldu ama emacs da şık durdu :) Emacs'ta kullandığım eklentiler:
  • Color-Theme (Çeşit çeşit renk temalarıyla dolu bir paket. Resimdeki tema "Comidion")
  • SLIME (Lisp çalışmak için uçuk kaçık bir şey. video Resimde aşağıdaki şey)
  • ParEdit (Parantezlerle emacs uğraşsın)
  • Tab Bar (Açtığınız dosyaları yukarda tab şeklinde gösterir)
  • Linum (Dosyadaki satır numaralarını gösterir)
  • Auto-Complete (Küçük kutucuk açar ve kod tamamlama yapar. Tabi fonksiyonların dökümantasyonunu falan da gösteriyor
.emacs dosyasını da veriyim bari. Bu arada Lispe tam gaz devam.
(add-to-list 'load-path "~/.emacs.d/")

(require 'color-theme)
(color-theme-initialize)
(color-theme-comidia)

(custom-set-variables
  ;; custom-set-variables was added by Custom.
  ;; If you edit it by hand, you could mess it up, so be careful.
  ;; Your init file should contain only one such instance.
  ;; If there is more than one, they won't work right.
 '(current-language-environment "UTF-8")
 '(display-battery-mode t)
 '(global-linum-mode t)
 '(scroll-bar-mode nil)
 '(tabbar-background-color nil)
 '(tabbar-cycle-scope (quote groups))
 '(tabbar-mode t nil (tabbar))
 '(tabbar-separator (quote (0.7)))
 '(tabbar-use-images t))

(custom-set-faces
  ;; custom-set-faces was added by Custom.
  ;; If you edit it by hand, you could mess it up, so be careful.
  ;; Your init file should contain only one such instance.
  ;; If there is more than one, they won't work right.
 '(default ((t (:inherit nil :stipple nil :background "Black" :foreground "SteelBlue" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 90 :width normal :foundry "unknown" :family "Liberation Mono"))))
 '(fringe ((t (:background "black"))))
 '(mode-line ((t (:background "#151515" :foreground "SteelBlue" :box (:line-width 1 :style none) :width condensed :family "neep"))))
 '(mode-line-emphasis ((t (:foreground "#DDDDDD"))))
 '(tabbar-button ((t (:inherit tabbar-default :foreground "dark red"))))
 '(tabbar-default ((((class color grayscale) (background dark)) (:background "#252525" :foreground "#2266aa" :height 1.0 :family "Liberation Mono"))))
 '(tabbar-selected ((t (:inherit tabbar-default :background "#222222" :weight bold))))
 '(tabbar-separator ((t (:inherit tabbar-default))))
 '(tabbar-unselected ((t (:inherit tabbar-default)))))


;; Araç Çubuğunu ve Menüyü Gizle
(menu-bar-mode -1)
(tool-bar-mode -1)

;; SLIME AYATRLARI
(setq inferior-lisp-program "/usr/bin/clisp")
(add-to-list 'load-path "/usr/share/emacs/site-lisp/slime/")
(require 'slime)
(setq slime-net-coding-system 'utf-8-unix)
(slime-setup '(slime-repl))

(add-hook 'slime-mode-hook (lambda ()
                 (auto-complete-mode 1)
                 (eldoc-mode 1)))
(lisp-interaction-mode )

(setq common-lisp-hyperspec-root "file:///usr/share/doc/HyperSpec/")


;; PAREDIT
(add-to-list 'load-path "/usr/share/emacs/site-lisp/paredit.el")
(autoload 'paredit-mode "paredit" t)

(require 'paredit)

(let ((turn-on-paredit-mode (lambda () (paredit-mode 1))))
  ;; some hooks recommended by the paredit source code (except for
  ;; emacs-lisp-mode-hook):
  (add-hook 'lisp-mode-hook turn-on-paredit-mode)
  (add-hook 'slime-mode-hook turn-on-paredit-mode)
  (add-hook 'scheme-mode-hook turn-on-paredit-mode)
  (add-hook 'emacs-lisp-mode-hook turn-on-paredit-mode))

;;;;; TABBAR
;;
(require 'tabbar)

(setq tabbar-background-color "#151515")
(setq tabbar-separator-widget 'string-or-width)
(setq tabbar-separator-value "=")

;;;;; LINUM + AUTO-COMPLETE
(require 'linum)
(require 'auto-complete)

(require 'auto-complete-config)
(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")
(ac-config-default)

(add-hook 'lisp-mode-hook 'lisp-interaction-mode)


(linum-mode)

(setq x-select-enable-clipboard t)

7 Haziran 2010 Pazartesi

Lisp aa lisp :)

uzun zamandır imrenirdim sonunda giriş yaptım :) hem eylenceli hem de baya ufkumu açtı. tavsiye edilir. türkçe kaynak bulmak zor ama www.fazlamesai.net ve www.ileriseviye.org ve Emre Seviç'in bloguna bakabilirsiniz.

Şuan lisp ile basit bir program üzerine çalışmaktayım program bittiğinde deneyimlerimi paylaşacağım.