Compiler yazmak istiyorum! Nereden başlamalıyım?

Başlatan Elektroemre, 05 Nisan 2012, 00:05:19

mdargut

Alıntı yapılan: fractal - 05 Nisan 2012, 17:37:21
kendi compilerimizi yapmanın avantajını tam olarak anlamadım.piyasa cok düzgün çalışan compiler varken ve bu uğraşı zamanını bu hazır compiler ları kullanarak süper projeler yapmak varken neden amerikayı tekrardan keşfetmek için harçıyalım.ama olay şöyle ise bilemiyorum basic,fotran,delphi,c gibi bir çok programala dili var coğu birbirine benziyor bunlardan farklı cığır açıçak bir dil henüz yok sanırım.senin yapacağın compilerde insalara farklı alternatifler suanabilecekmi? amacın nedir?

CCS C var, hitech c var, mikro c var. Arkadaş birde emre c olsun istemiş demek ki :) Onunda kullanıcısı çıkar elbette. Bu yolda sana başarılar dostum.

zakbay

Alıntı yapılan: fractal - 05 Nisan 2012, 17:37:21
kendi compilerimizi yapmanın avantajını tam olarak anlamadım.piyasa cok düzgün çalışan compiler varken ve bu uğraşı zamanını bu hazır compiler ları kullanarak süper projeler yapmak varken neden amerikayı tekrardan keşfetmek için harçıyalım.ama olay şöyle ise bilemiyorum basic,fotran,delphi,c gibi bir çok programala dili var coğu birbirine benziyor bunlardan farklı cığır açıçak bir dil henüz yok sanırım.senin yapacağın compilerde insalara farklı alternatifler suanabilecekmi? amacın nedir?

Bence çığır açmasına gerek yok, bir yerlerden başlamak gerekli birinin bunu yapması gerekiyor devlet yapmıyor kişilerde yapmazsa hiçbir zaman bir başlangıç olmayacaktır.

mikroe nin derleyicilerinin bir çığır açtığını hiç sanmıyorum ama sonuçta bir sektör olarak sanırım yugoslavya da faaliyet gösteriyorlar. (ben bile Türkiye nin taşra olarak nitelenen bir şehrinde derleyicisini almasamda başka bir ürünü olan programlayıcısını 2009 yılından beri kullanıyorum). 
Dediğim gibi bu girişim bir sektörü ortaya çıkarır. Ülke adına çok faydalı olacağını düşünüyorum ve arkadaşıma başarılar diliyorum umarım bu isteği kırılmaz.
Tek dostum çalışmak...

fractal

şu noktaya katılıyorum anglo-saksonun yada çekik gözlülerin compilerını kullanacağıma yerlisini tercih ederim
Restantum cogniscutur Quantum deligutur

Elektroemre

Öncelikle ciddi yorumlarınız için teşekkür ediyorum arkadaşlar.
Sayenizde başlangıç kaynaklarına ulaştım.
Özellikle gerbay hocam gerçekten güzel dokümanlar.

Şunu belirteyim, birazcık olgunlaştırdıktan sonra bireysel bir uğraştan daha ciddi bir iş olacak.
Çıkan ürün gerçekten güzel olursa ticari olarak satmak büyük mutluluk olur benim için.
Ama ilk amaç bu değil, en kötü ihtimalle reklam değeri taşıyacak çalışma ve başka şeylere vesile olacak.


carirt

compiler işini tek başına yapamassın ticari amaçlı olarak mikroc pro pic32 takımı saymadım ama 30 kişi vardır bir sürü kütüphane hazırlaman lazım

bence zevkine hobi amaçlı uğraş

carirt

birde kod optimizasyonu yapman lazım daha az kodla aynı işin yapılabilmesi için


Elektroemre

" bireysel bir uğraştan daha ciddi bir iş olacak" ile kastım zaten bir ekiple çalışmak.
Ancak önce somut bir şeyler sunmak lazım insanlara.

nuriozdas

Emre bilgisayar dillerinden hangisini biliyorsunuz?
program ismi buldum "EMC" OLSUN SANA YARDIMCI OLURUM

gilamada

ccs deki derleme sonucu oluşan .lst uzantılı dosyada c kodları ve asm kod karşılıkları var, kaydedicileri kullanım şekli belki yardımcı olabilir.

Ömer KANAR

http://www.csistem.org/about/csdos.php

Bu proje kapsamında makaleler, seminerler ve tartışma platformları yoluyla geniş bir bilgi birikiminin elde edileceği umulmaktadır.

Projenin hedeflerinden birisi de ülkemizde bu tür çalışmaların özendirilmesidir.


Yapacağın iş illaki işe yarayacaktır.
Bir tek saat, beş vakit namaza abdestle kâfi gelir.

ziyaretci

Alıntı yapılan: sakkan - 05 Nisan 2012, 15:27:42
hocam bence nasıl yaparsanız yapın işi önce basit ele alın. daha sonra işi bilimsel yönde inceleyin. detayda gömülüp kalmayın. sonuç elde ederseniz bu sizi motive de eder.

frkcn

Alıntı yapılan: serdararikan - 05 Nisan 2012, 13:52:20
bir compiler yazmak yerine blok halinde veya ladder mantığıyla proramlama üzerine bir derleyici yazarsan hedefine ulaşabilirsin bence.böylece aynı PLC de olduğu gibi kullanıcı olayın low-level ine bulaşamadan kontrol işlemleri gerçekleştrilebilir.

iyi fikir:)
Bugün ömrümün geride kalan son günü...

Elektroemre

Merhaba arkadaşlar,

Konuyu açalı yaklaşık 7 ay olmuş. Kaydettiğim ilerlemeyi paylaşmak istedim.
Yazın yaklaşık bir ay boyunca bu konuya yöneldim.
Öğrenelim deneyelim, lexical analyzer, parser, intermediate code generater opitmizer derken, herhangi bir hazır tool kullanmadan şuan gerçek anlamda çalışan bir compiler yazdım çok şükür.
Assembler kısmıda bitmek üzere. Oda bitince kaynak kodu alıp, hex dosyasına dönüştürecek tam bir compiler olacak kısmetse ama okul sebebiyle 2 aydır ara vermek zorunda kaldım.


Tabi iş bununlada bitmiyor, ondan sonra bir çok optimizasyon, built-in libraryın hazırlanması alpha ve beta test aşaması.
İtiraf etmeliyim başlarken gerçekten bu işi yapabileceğimden emin değildim, başta @gerbay hocam olmak üzere desteğini esirgemeyen tüm arkadaşlara teşekkür ederim.

V 1.0'ı da buradan paylaşmak nasip olur inşallah  :)




Elektroemre

Teşekür ederim hocam benim için şeref olur  :)

Şuanki compiler MSP430 core için kod üretiyor. (MSP430X core henüz desteklenmiyor)
Aslında sadece code generator ve üst katmanlarda bir kaç değişiklikle bir kaç ay içerisinde başka mimariye destek verebilirim (esas hedefim Cortex-M3-M4 zaten) ancak şu gerçeği farkettim, compiler yazamaktan çok sonrasındaki support sıkıntılı bir iş...
----
Birde math expressionların parse edilip tree'lere çevrilmesi ve sonrasında minimum temp değişkene göre optimizasyonu aşamasında bir ara beyin kanaması geçireceğim zannettim kodları yazarken. Allah başka acı yaşatmasın söylemeden edemeyeceğim ;D

Klein

İtiraf edeyim! Başlığı ilk gördüğümde, bir süre hobi olarak uğraşıp; sonra bırakacağını düşünmüştüm. Azmin elinden bir şey kurtulmazmış. Tebrik ederim.