Worcspace
حافظه ای که برای ذخیره متغیرها اختصاص داده می شود فضای کار نام دارد.چند نوع فضای کار در مطلب وجود دارد.فضایی به نام base که مروبط به فضای کار اصلی مطلب است فضایی به نام current که مربوط به فضای کاری جاری است؛ و فضای کاری parent یا caller .
برای روشن شدن مطلب فایلهای زیر را درست کنید
function testcurrent
assignin('caller','b',23)
assignin('base','t',33)
m=34
و فایل
function b=testcaller
testcurrent
m=67
هر تابع برای خود یک فضای کاری مسقل دارد یعنی اگر در درون دو تابع یک متغیر وجود داشته باشد مقدار این متغیر در دو تابع برابر نخواهد بود.
حالا د رخط فرمان دستور h=testcaller را اجرا کنید.
با اجرای این دستور تابع testcaller اجرا می شود.این تابع خود تابع testcurrent را فراخوانی می کند؛ در این حالت فضای کاری تابع testcaller به عنوان caller فضای کاری تابع testcurrent در نظر گرفته می شود.
با اجرای تابع testcurrent دستورات این تابع اجرا می شوند. با اجرای دستور اول متغیر b به درون فضای تابع testcaller فرستاده می شود.با اجرای دستور دوم متغیر t به فضای کاری base فرستاده می شود.
خروجی تابع testcaller متغیر b است که مقدار آن در متغیر h ذخیره می شود.