Tôi đang cố tạo loại "số nguyên mod p" trong Julia. (Tôi chắc rằng có đã là một gói cho điều này, nó chỉ là một bài tập cá nhân.)Tham chiếu tham số kiểu dưới dạng tham số hàm trong Julia
type Intp{p}
v::Int8
end
function add(a::Intp{p},b::Intp{p})
return Intp{p}((a.v + b.v) % p)
end
Tôi nhận được một lỗi khi xác định các add nói rằng p không được định nghĩa. Làm thế nào để tôi tham khảo p từ bên trong thêm?
(Lưu ý:. Tôi có thể làm điều gì đó như
type Intp
v::Int8
p
end
function add(a::Intp,b::Intp)
return Intp((a.v + b.v) % a.p,p)
end
nhưng điều này sẽ đòi hỏi rằng p được lưu trữ với mỗi số duy nhất tôi cảm thấy như thế này sẽ không hiệu quả, và tôi có tâm trí của tôi trên khái quát nơi nó sẽ thực sự không hiệu quả. Tôi muốn p chỉ được chỉ định một lần, đối với loại, và được tham chiếu trong các chức năng lấy thứ đó làm đối số.)
Cảm ơn bạn Stefan. Tôi thích ngôn ngữ của bạn. –