September 14, 2009

Bakıyorum da çalışmalar başlamış, Hayırlı Olsun. Kodları inceledim, Can sen svn'yi öğren demiştin ama ben fazla ısınamadım o programa acaba svn olmadan bir şeyler yapamaz mıyız? Bir de şimdi dosyaları indirdim klasöre gidip make dedim bir kaç hata verdi:

dmd deneme.d tr/string.d tr/uni.d belge.ddoc -D -Ddhtml
dmd deneme.d tr/string.d tr/uni.d -unittest -odobj -safe -w
/home/emre413/dmd2/linux/bin/../../src/druntime/import/core/exception.di(8): Error: variable core.exception.assertHandler __gshared not allowed in safe mode; use shared
/home/emre413/dmd2/linux/bin/../../src/druntime/import/core/stdc/signal.d(25): Error: cast from int to voidC function(int) not allowed in safe mode
/home/emre413/dmd2/linux/bin/../../src/druntime/import/core/stdc/signal.d(26): Error: cast from int to voidC function(int) not allowed in safe mode
/home/emre413/dmd2/linux/bin/../../src/druntime/import/core/stdc/signal.d(27): Error: cast from int to voidC function(int) not allowed in safe mode
make: *** [testler] Hata 1

safe mode ne ola?? Ali hocam yetişin :D

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

September 14, 2009

Şu safe modu kaldırın. O zaman deneyelim. O zaman çalışır herhalde.(ben kodu değiştirmeyeyim :-D) Çok önemli bir hata yaptığımı sanmıyorum. Safe modun o kadar sağlıklı olmadığını söylediğiniz hatırlıyorum.

Ben linux'a da geçerim. Sorun yok ama bence kütüphanemiz taşınabilir olmalı.

Bu hataların ne olduğunu anlamadım ama kesin türle ilgili. Zaten programda türle ilgili hoşuma gitmeyen şeyler vardı. Bende make modunu kullanmasamda D'yi safe modunda kullansam bu hataları görürüm herhalde.

Bu safe modu güvenlik modu değil mi ? Yani kodların sağlıklı çalışmasını kontrol ediyor.

Yarın kodu düzeltir hem de daha hızlandırırım. Ama bugünlük sadece proje hakkında konuşalım.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

September 14, 2009
../src/druntime/import/core/exception.di(8): Error: variable core.exception.assertHandler __gshared not allowed in safe mode; use shared
../src/druntime/import/core/stdc/signal.d(25): Error: cast from int to voidC  function(int) not allowed in safe mode
../src/druntime/import/core/stdc/signal.d(26): Error: cast from int to voidC  function(int) not allowed in safe mode
../src/druntime/import/core/stdc/signal.d(27): Error: cast from int to voidC  function(int) not allowed in safe mode
make: *** [testler] Error 1

  1. satır boş. Önceki satırda da module satırı var. Burada da hata olduğunu sanmıyorum.

25 26 27 satırlarda unittest var.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

September 14, 2009

Emre windowsun varsa windows kullan. Svn'nin Gui'si ile beyazlar daha beyaz. Sende kulan. Çok kolay çok rahat.
Alıntı (acehreli):

>

emre413, o hatalar -safe seçeneği yüzünden oluyormuş. Sağlam olacağını düşündüğüm için kullanmıştım ama import std.string; bile çalışmıyor. Şimdilik kaldırdım ve şimdi derleniyor...

Ben demiştim bu safe olmaz dedim. Kodlarımda hatada yok :-D Şuan kodu değiştirmeme gerek yok değil mi ? Yarın diğer fonksiyonları ekleyip hızlandırmaya çalışacağım.

Alıntı (acehreli):

>

O satır numaraları kendilerinden önce yazılan dosyanın içinde. Örneğin src/druntime/import/core/exception.di'de...

Anlamadım ama önemli değil. Nasıl olsa safe şuan iyi bir durumda değil. Zaten eğer kod çalışıyorsa kurcalama diye ünlü bir söz varmış. Bende ona uyacağım.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

September 14, 2009

Alıntı (acehreli):

>

Yani bizim proje dosyalarıyla ilgili değil; std.string'i ekleyince oluyor. (tr.string'i değil...)

Belki kütüphanede hatalar vardır ama yinede kütüphane çalıştığına göre çok önemli değil.
Safe mod D2'ye tam uyumlu değil mi? Birde phobos D2 İle tam uyumlu mu ? Belki bundan hatalar doğmuş olabilir.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

September 14, 2009

Ben iki sistemle de çalışıyorum neyse artık yaparız bir şekilde şimdi bir şey sormak istiyorum projeye direkt

import tr.uni;

yazıp programı derlemek için ne yapmamız gerek? Yani "dmd blabla.d tr/uni.d tr/string.d" yazıp mı derlemek zorundayız tüm .d dosyalarını? Ben /home/emre413/dmd2/src/phobos altına tr'yi kopyaladım olmadı. Sizler nasıl yapıyorsunuz?

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

September 14, 2009

Aynen öyle...

canalpay, haydi sen de string.d'ye bir el at lütfen. :) Daha önce yazdığın ve benim "daha hızlı" olabilir diye gereksizce eleştirdiğim fonksiyonun aslında gayet güzel.

Sen şimdi string.d'yi o fonksiyonla başlat, gerekirse sonraki sürümlerde hızlandırırız. Böylece birim testlerin gücünü de görmüş olacağız: birim testler bizi koruduğu için, fonksiyonun içinde yapacağımız değişikliklerin doğru çalıştıklarına güvenebileceğiz.

Senin fonksiyonunun neden kabul edilebilir olduğunu söyleyeyim:

  • işini doğru olarak yapıyor

  • benim daha hızlısı var dediğim yöntemden algoritmik olarak daha yavaş değil: senin yöntem diziyi 3 kere yürüyor, benim yöntem 1 kere... İki algoritmanın karmaşıklığı da O(N)'dir.

Gerçekten, haydi o fonksiyonu eklemekle başla; ve diğerlerini de gerçekleştir! :)

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

September 14, 2009

Kesinlikle! :)

Örneğin ben olsam modüllere fonksiyonları teker teker eklerdim.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

September 14, 2009

_ karakteri kütüphanelerde çok yaygındır ama. (?) Hatta _ karakterinin bazı kullanımları bazı dillerde programcılara kapatılmıştır bile. (Bir örnek: C'de ve C++'da programcıların baş harfi _ ile başlayan global isim kullanmaları yasal değildir.)

C ve C++ standart kütüphaneleri _ karakterini kullanır. Boost kullanır. Phobos kullanıyor. vs.

Sana neden amatörce geliyor acaba? (?)

Seçeneklere bakalım:

T: klasik olarak şablonlarla kullanılan bir harf olduğu için uygun değil; ayrıca Türkçe'nin kısaltması TR olduğu için kısaltması olur :)

tr: büyük harfi olmadığı için öncekine karışır: tolowertr

Tr: biri büyük biri küçük olduğu için bana uygun gelmiyor, çünkü TR bir kısaltmadır; ben Tr diye kullanıldığını görmüyorum

TR: olabilir: tolowerTR

tolower_tr: olabilir

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

September 14, 2009

Biraz karmaşık konuştum galiba. Yapılması gereken şey, uni.d ve string.d dosyalarının içini doldurmak... :) Bu aşamada projenin yapısını değiştirmeye ihtiyacımız yok.

Amaç; 'make' yazınca bütün projenin oluşturulması, ve bildiğim kadarıyla da zaten öyle çalışıyor.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]