آشنایی با پروژه تائوچین

تائوچین (Tau-chain-تائو از کلمه tautology یا حشوزاید یا همانگویی گرفته شده است) یک پروژه جاه طلبانه است که توسط اوهاد آسور (Ohad Asor) پیشنهاد و بنیان نهاده شده است. یکی از دلایلی که این پروژه را جاه طلبانه می سازد، تلاش این پروژه برای پل زدن بین شکاف موجود در زبان سمانتیک (زبان انسانی عمدتا مبتنی بر فعل- فاعل و مفهوم) و زبان های رایج برنامه نویسی است. به همین خاطر برای توضیح این پروژه ما مجبور هستیم اندکی به نظریه زبان شناسی رجوع کنیم و برخی مفاهیم را توضیح دهیم.

تقریبا تمامی کسانی که با اتریوم آشنا هستند، می دانند که قراردادهای هوشمند چگونه عمل می کنند. این قراردادها، یک کد برنامه نویسی شده هستند که می توانند شرایط یک قرارداد را در زمان مشخص و با تبصره ها و شرایط از پیش نوشته شده در کد، اجرا کنند. بنابراین مشکل اعتماد متقابل در اجرای قرارداد یا چالش ها را حل می کنند. اما نه تنها وکلا، بلکه تقریبا هرکسی که با مبادلات و قراردادها سر و کار داشته است، می داند که قراردادها به زبان انسانی نوشته می شوند و از این رو جای تفسیر و تاویل وجود دارد. گاهی تبصره ها  و شرایط خاص آنچنان پیچیده می شوند که دادگاه ها  و وکلا نیز به سختی از پس توضیح  وتفسیر آن برمی آیند. پس این مشکل مهم همچنان پابرجاست که چگونه قراردادهای معمولی و سنتی که به زبان انسانی نوشته می شود ( و علی الخصوص با زبان انسانی در دادگاه قضاوت می شوند) را می توان به کد تبدیل کرد.

زبان شناسانی مانند نوام چامسکی، پیشتر نشان داده اند که شکاف بین زبان انسانی و زبان کامپیوتر پر نخواهد شد زیرا زبان انسانی اصطلاحا زایا است. اما به هر حال می توان برای هرقرارداد، بهترین کد ممکن را پیدا کرده و نوشت و روی بلاک چین اتریوم قرار داد. اما با این کار، ما یک محدودیت بزرگ را پذیرفته ایم: هر قرارداد در هر بلاک فقط برای یک مورد مشخص قابل اجراست یا به عبارت دیگر هر کد مخصوص یک قرارداد است و این یعنی نوشتن دوباره و اجرای دوباره قراردادها. ممکن است فکر کنید این آنقدر هم محدودیت بزرگی نیست، اما محدودیت بزرگی خواهد بود اگر به جای قراردادهای هوشمند برای مبادلات، برنامه های کاربردی و کدهای نرم افزاری را قرار دهید. این یک محدودیت بزرگی خواهد بود که برای هر نیازمندی یک مشتری، یک برنامه نویس متخصص باید برای آن برنامه بنویسد و این برنامه قابل جستجو و استفاده دیگران نباشد.

مشخصا GitHub به همین منظور توسعه یافته تا همگان بتوانند از کدهای متن باز به اشتراک گذشته شده استفاده کنند. اما این فقط برای برنامه نویسان متخصص است و همچنین معلوم نیست که نیازمندی های مشخص شما را برآورده خواهد کرد یا خیر و به احتمال بسیار زیاد شما باید تغییراتی در کد ایجاد کنید و اگر یک کاربر هستید در نهایت به یک برنامه نویس نیاز خواهید داشت. همچنین افراد غیرمتخصص که نیازمندی آنها با زبان انسانی بیان می شود براحتی قادر به جستجو در Github  و استفاده از کدهای متن باز نخواهند بود.

پروژه تائوچین، در همین جاست که وارد عمل می شود و قصد دارد که با استفاده از یک زبان سمنتیک یا زبان نزدیک به زبان انسانی (زبان تائو)، مشتریان (برای مثال کارفرمایانی که برنامه نویسان را به خدمت می گیرند)، براساس نیازمندی های خود (که به زبان انسانی بیان می کنند)، بهترین کد ممکن را پیدا کنند. بنابراین این با Github  تفاوت بسیار خواهد داشت. به بیان آسور: «در تائوچین همه کدها در یک جا گردآوری می شوند و به این ترتیب من می توانم تمامی توابع مشمول در کدها را اسکن کنم و تابع لازم برای نیازمندی خودم را پیدا کنم و بدون شک و تردید از آن استفاده کنم، چون من یک اثبات ریاضیاتی در دست دارم که نشان می دهد این دقیقا همانچیزی است که من می خواهم. به این ترتیب هرکسی هرتابعی را فقط یکبار می نویسد.»

نکته در اینجاست که چگونه مشتریان می توانند کد مورد نظر را پیدا کنند. کدها به زبان کامپیوتری نوشته می شود، اما نیازمندی ها به زبان انسانی بیان می شوند. زبان تائو و پروژه تائوچین  برای حل همین مشکل ایجاد شده است.

در ابتدا، برای قرارداد کد روی بلاک چین، باید اول کنترل شود که آیا کد صحیح است و هیچ تناقضی وجود ندارد. بعد از این، اگر این تابع یا کد مذکور مورد استفاده قرار گرفت، به لطف بلاک چین تضمین می شود که برنامه نویس پاداش خواهد گرفت که با پرداخت با پول این شبکه یعنی آگورا انجام خواهد شد.  بلاک چین تائوچین در واقع مانند مرکزی عمل می کند که همگان می توانند توابع و کدهای لازم را با استفاده از زبان سمنتیک تائو جستجو کرده و مورد استفاده قرار دهند. به عبارت دیگر، تائوچین از زبان جستجوگر RDF  استفاده می کند. زبان های RDF یا RDF query language زبان های کامپیوتری هستند که برای جستجو در پایگاه داده به کار می روند و به همین خاطر به زبان انسانی نزدیک تر هستند.

این بسیار جالب توجه است که چگونه فن آوری بلاک چین و قراردادهای هوشمند می تواند زبان برنامه نویسی کامپیوتری را به زبان انسانی (اگرچه نه با نظریه بلکه در عمل) نزدیک تر کند. اما همزمان این توانایی، یک مشکل هم بر سر راه این پروژه هست. این پروژه بیش از حد مفهومی و نظری است و بنابراین این خطر هست که مردم متوجه اهمیت آن نشوند و در آن مشارکت نکنند. توسعه دهندگان این پروژه، از همین مشکل آگاه هستند و به همین خاطر در وب سایت رسمی خود نوشته اند:

«توضیح آگورا و تائو و محتوای آن کار آسانی نیست. ما در حال کار روی مطالب توضیحی هستیم و موفقیت قابل توجهی در گسترش آن در سراسر جهان و رویای خود داشته ایم، با این حال، این موفقیت در توضیح ایده ها هنوز جزئی است. ماتریال های کنونی هنوز تصویر دقیقی از پروژه را توضیح نمی دهند و به اندازه کافی واضح نیستند. یک وب سایت جدید و ویدئوهای تکمیلی دارد ساخته می شود. افراد بیشتری دارند درگیر می شوند و سعی می کنند ایده ها را به زبان خودشان توضیح دهند. این فرآیند کار و زمان می برد، اما مهم است که افراد کافی درک کنند که این درباره چیست که واقعا درباره موضوع مهمی است و روی تمامی جوانب زندگی تاثیر بسزایی دارد.»

به همین خاطر، جلب توجه مردم خصوصا برنامه نویسان و البته مشتریان آنها، برای این پروژه یک چالش مهم است.

 

 

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *