بدون کامپیوتر نمیشود !
۱۴۰۰ آبان ۲۴, دوشنبه ساعت ۱۴:۴۸آخر نتونستم بدون کامپیوتر سر کنم.
تنهایی امان من را بریده. دلم هم صحبتی میخواد. دلم تفریح میخواد.
دو سه روزی هست خودم رو گول میزنم و روزی یک ساعت از کامپیوتر استفاده میکنم. در این مدت حلقه while و for رو کامل تر کردم.
آرایه ها رو به طور کامل دیباگ کردم و برنامه های زیر رو اجرا کردم.
var i = 0;
var arr = [];
while( i < 10 ) {
arr[i] = "abbas : "+i+"\n";
i++;
}
i = 0;
while( i < 10 ) {
print( arr[i]+"\n" );
i++;
}
اما دلیل اینکه خیلی از قسمت ها بازنویسی شد چی هست ؟
زبان های برنامه نویسی به دو شکل پیاده سازی میشوند. یکی داینامیک تایپ و دیگری استتیک تایپ.
در پیاده سازی استاتیک خود متغییر type داره ولی در پیاده سازی داینامیک مقادیر هستند که type دارند. این رو من وسط پست های قبل اشاره ای بهشون کردم.
برای پیاده سازی زبان مشابه js و php باید زبان به صورت dynamic type طراحی بشه. یعنی مثلا اگر یک عدد داشته باشم. باید نوع اون رو هم کنار عدد نگه داری کنم. که خود این ملزم تغییراتی در کد بود که همگی انجام شدند.
var arr = [];
for( var d = 0; d < 10; d++ ) {
arr[d] = ( "abbas : "+d+"\n" );
}
var i = 0;
while( i < array_len(arr) ) {
var k = array_key(arr, i);
var v = array_value(arr, i);
print( k );
print("\n");
print( v );
i++;
}
این مدل آخر باید تبدیل به for in بشه که در حال پیاده سازی اون هستم.