هل يوجد في Go REPL (وحدة تحكم تفاعلية) مثل Python؟
مرحبًا بالجميع! لقد بدأت للتو في تعلم Go، وانتقلت من Python، ويزعجني كثيرًا عدم وجود وحدة تحكم تفاعلية (REPL) مألوفة. في Python، كنت أستطيع ببساطة كتابة `python` في الطرفية واختبار قطع صغيرة من الكود فورًا، ورؤية كيفية عمل الدوال، والتحقق من الصياغة. هذا كان يسرع التعلم والتصحيح بشكل رائع.
في Go، اعتدت على الكتابة بهذا الشكل:
```go
package main
import "fmt"
func main() {
for i := 0; i < 10; i++ {
fmt.Println(i * 2)
}
}
```
وفي كل مرة، للتحقق من حلقة بسيطة أو تعبير، أضطر إلى إنشاء ملف `main.go`، وكتابة كل الإطار مع `package main` و `func main()`، ثم الحفظ، والترجمة (`go build`) أو التشغيل (`go run`). هذا يبطئ العمل بشكل رهيب عندما أحتاج إلى التحقق بسرعة من فكرة ما.
لقد بحثت في Google، لكني وجدت فقط إشارات إلى أن Go لا يحتوي على REPL مدمج. هل هذا صحيح؟ لماذا فعل مبتكرو اللغة ذلك؟ ربما هناك أدوات خارجية أو طرق بديلة تعمل مثل REPL؟ سأكون