Lambda kağıtlarından klasik modelin Python için geçerli olmadığını anlıyorum.
Ve kapanışlar Python sisteminin uygulanmasının matematiksel modeli değildir.
Peki hangi model?
Lambda kağıtlarından klasik modelin Python için geçerli olmadığını anlıyorum.
Ve kapanışlar Python sisteminin uygulanmasının matematiksel modeli değildir.
Peki hangi model?
Yanıtlar:
Python ve lambda hesabı üzerindeki klasik kağıtlardan modeller arasındaki temel fark, Python'un çok paradigma bir dil olmasıdır. Lambda hesabını düşünen çoğu makale, diğer paradigmaların (OOP veya mantıksal programlama gibi) eklenmesinin karmaşıklığı olmaksızın saf bir işlevsel dili düşünmektedir.
Sorudan ve yorumlarınızdan, bu tür çok paradigma dillerinin temellerine ilgi duyduğunuzu düşünüyorum. Bu durumda, Peter van Roy ve Seif Haridi tarafından Bilgisayar Programlama Kavramları, Teknikleri ve Modelleri önerebilirim . Kitap esas olarak oldukça akademik bir dil olan Mozart / Oz dili ile ilgilidir. Bununla birlikte, kitap çok küçük bir çekirdek dil ile nasıl başlanacağını ve üzerine (ve hepsi aynı çekirdek dilde) nesne yönelimi, fonksiyonel ve mantık programlamanın nasıl oluşturulacağını açıkça göstermektedir.
Gerçek matematiksel modele gelince, çoğu programlama dili sadece resmi olmayan veya yarı resmi bir spesifikasyona sahiptir. Nadiren, temel olarak lambda hesabı gibi uygun bir teoriye sahip olanı buluyorsunuz. İcat edilmiş ve az çok uygulanabilir olan birçok farklı matematiksel model vardır. İlginç olan şey, programlama semantiğinin nasıl modellendiğine dair farklı yaklaşımlar arasında genel bir ayrım olmasıdır: anlambilim, anlamsal, işlevsel veya cebirsel olarak tanımlanabilir. Daha da derine inmek istiyorsanız , Programlama Teorilerini Birleştirici hakkında biraz okumak bir başlangıçtır, ancak dik bir öğrenme eğrisi olan sert bir başlangıçtır.