2010-12-02 20 views
5

Io dilinde işleçler ile deneme yapıyorum. Her şey kısmada gayet iyi çalışıyor, fakat kodumu dosyalara koyduğumda sorunlara karışıyorum.Io operatörleri, onları bir dosyada oluşturamıyor görünüyor

İşte küçücük bir örnek

belirtildiği gibi
OperatorTable addOperator("+++", 3)  # Say that +++ should be an operator 
Number +++ := method(v, call target + v) # Define the slot +++ on numbers 
(30 +++ 40) println      # Try it out! 

, bu cli içinde çalışıyor (+ olarak aynı şeyi yapar bir operatör +++ oluşturma), ama çalıştırmayı denediğinizde çalışmıyor bir dosyada. Operatörün tanımlanmasından önce, dosyanın hazırlandığı gerçeğiyle ilgili bir şey olduğunu varsayardım, ama bu konuda nasıl çalışırdım?

cevap

4

Bu, kullanıcı ileticisinin Io içinde bir sınırlamasıdır. Ne olur kabaca bu: Kaynak dosya yüklenir

  1. , simgeleþtirilmiþ
  2. Operatör shuffler
  3. Kod
  4. Maalesef sizin için

değerlendirilir çalışır (bu aşamada, hiçbir operatörler bilinmektedir), Zaten çalıştırıldıktan sonra operatör shuffler'ı yönlendiriyorsunuz.

+0

Teşekkürler, bu problemi açıklıyor. Bunu nasıl halledelim? Düşünebildiğim bir şey, önce kullanmak istediğim tüm operatörleri tanımlayan ve daha sonra projemin geri kalanını yükleyen bir ana dosya oluşturmak. – Jakob

+0

Tam olarak. jer