Python

Su aralar quant-econ.net sayfasini kullanarak python ogrenmeye calisiyorum. Site Thomas J. Sargent and John Stachurski tarafindan hazirlaniyor (tahminim daha cok Stachurski’nin emegi var :).

Python oldukca populer bir dil STEM community’si arasinda. Bizim ekonomi alaninda ama cok alicisi yok. Genelde herkesin kullandigi MATLAB var standart olarak. Data ile ugrasanlar R veya Stata’ya yoneliyorlar. Heterojen agent calisip kalibrasyon yapanlar FORTRAN kullaniyorlar. Fortran kod yazmak icin igrenc bir dil ama inanilmaz hizli. Isiniz denklem sisteminde kok aramak olunca kullanilmasi kacinilmaz oluyor. Matlab’in loop olayinda agir bir yavasligi var, o yuzden yuz kati kadar performans farki cikabiliyor.

Python bu noktada herkese best of the all worlds oneriyor gibi. Dogal olarak high level bir dil oldugu icin yavas. Ama bottleneckler icin C veya Fortran programciklari enjekte edilebiliyor (ben deneme haricinde cok yapamadim). Bunun disinda tek kriter programlarin calisma suresi degil, programi yazma sureniz de toplam development zamanina dahil oldugundan Python’la yazmak mantikli olabiliyor cogu zaman. Tabii kendine gore handikaplari var:

Python tek amaca yonelik olmadigi icin, programlama gecmisi olmayanlar icin cok “intuitive” gelmeyebiliyor. Ilk basta bana cok kolay geldi, ama elegant kodlari okuyunca kafamin bu sekilde calismadigini anladim 🙂 MATLAB mesela cok daha “dusundugun gibi yazdigin” bir dil. Ama ogrendikce bayagi zevk veriyor.

Ilk baslarda Python linux gibi. Her seyi sizin istediginiz sekilde yapabiliyor, ama gidip bulacaksiniz. Misal MATLAB’de cat diye tic-toc seklindeki kod zamanlama olayi icin biraz okuma yapmaniz gerekiyor her durumda. Ama community cok buyuk, cok cesitli ve derin. Dilin kendisi de cok yetenekli. Zamanlama fonksiyonunu kolaylastirmis mesela bu arkadas:

https://gist.github.com/tylerhartley/5174230

Bunlari module seklinde programlariniza ekleyebiliyorsunuz. Bir noktadan sonra tek tek bunlari eklemek bayabiliyor ama daha okunabilir, acik ve esnek bir sistem getirisine karsilik var bu handikap. Bu konuda daha cok kaynak, bilgi ve yorum paylasacagim.

Yorum bırakın