سيكون من الجيد أن يكون لديك REPL مع التاريخ والحد الأدنى من البيئة. أعتقد أنه يمكننا إعادة استخدام بعض المسالك من node.js مثل وحدة "repl":
const Repl = require('repl');
const repl = Repl.start({
prompt: 'assemblyscript> ',
useColors: true,
ignoreUndefined: true
});
repl.on('line', line => {
line = line.trim();
// try compile assemblyscript for this line here
});
نظرًا لأننا نتحدث عن مترجم ثابت هنا لا يمكنه تقييم سطر إضافي مخصص ، يبدو أن الطريقة الوحيدة للقيام بذلك هي الاحتفاظ بسجل كامل للمدخلات (تجاهل المدخلات غير الصالحة) وإعادة تجميع كل شيء بسطر جديد مضاف ، بما في ذلك أي تخصيصات متغيرة ، واستدعاءات للوظائف وما إلى ذلك. قد يعمل هذا بطريقة ما ، لكني أتساءل عما إذا كانت مطابقة جيدة بسبب تأخير وقت التجميع.
أعتقد أنه ممكن. على سبيل المثال ، لدى Rust بعض الصناديق غير الرسمية لهذا الغرض. مثل evcxr_repl و runner . انظر أيضًا اقتراح RFC .
تم وضع علامة على هذه المشكلة تلقائيًا على أنها قديمة نظرًا لعدم وجود نشاط حديث لها. سيتم إغلاقه إذا لم يحدث أي نشاط آخر. شكرا لمساهماتكم.