#lang
hattınızda hangi dili kullanıyorsunuz biliyor musunuz? Aşağıdaki talimatların geri kalanında bir #lang
satırı kullandığınız varsayılmaktadır. Eğer #lang r5rs
vardır ve display
veya write
değerleri beklediğiniz çıkışı görmelisiniz
edin. Sadece Etkileşimlerdeki çıplak değerlerini yazarsanız
> (define p (list 1 2))
> (display p)
(1 2)
> (set-car! p 'one)
> (display p)
(one 2)
, DrRacket onları print
edecek ve bu gördüğün temsilini kullanır. DrRacket'te, print
değerleriyle customize yapabilirsiniz. Süreç şöyledir, adım-adım: Dil menüsüne
Git ve Dil Seç seçin. Dil diyaloğunu görmelisiniz.
Sol alttaki düğme , Ayrıntılar'u tıklatırsa, bunu tıklatın ve iletişim pencereleri özelleştirmeleri içerecek şekilde genişlemelidir.
Çıkış Stili seçeneklerine bakın. Oluşturucu, Quasiquote, yazma ve baskı: Dört seçenek olmalıdır. Özelleştirmeyi onaylamak için yazın, yazın ve Ok tuşlarına basın.
sonra, bunu bir kez: liste yapısı değişken olduğunu notate çalışıyor çünkü
> (display (list 1 2))
(1 2)
> (write (list 1 2))
(1 2)
> (list 1 2)
{1 2}
Hala, küme parantezi kullanarak, biraz farklı beklediğinizden daha yazdırılır.
Bu sizi rahatsız ediyorsa, bunu düzeltebiliriz. Programınızın üst kısmına yakın bir çizgi ekleyin (ancak #lang
satırından sonra).
(#%require r5rs/init)
Bu hat R5RS uyumu arttırmak için çalışır r5rs/init
adı verilen bir raket özgü modül çeker; Özellikle, parantezler nihayetinde değişebilir çiftler için yuvarlak olanlar olarak basılmalıdır.
> (display (list 1 2))
(1 2)
> (write (list 1 2))
(1 2)
> (list 1 2)
(1 2)
Teşekkürler! Yazma stili hile yaptı. #lang gezegeni neil/sicp kullanıyordum.Ancak şimdi yazma stili dili SICP PLaneT 1.16 ile özel olarak gösteriliyor ve 'oku: #lang mevcut bağlamda etkin değil' diyor, çalışmasını sağlamak için #land hattını yorumlamak zorunda kaldım. – Dmitri
Serin. Paketinin varsayılanlarının değiştirilip değiştirilemeyeceğini görmek için Neil ile daha sonra takip edeceğim, böylece varsayılan olarak ** yazınız. – dyoo
DrRacket yerine bir terminalden çalışıyorsanız çıkış stilini nasıl yapılandırırsınız? (Emacs’de Geiser modu ile Racket’i çalıştırıyorum). – crowding