W szczególności, jeśli zdefiniowałem nowy jako
zamiast
czy -calculus byłby podstawą do konkurowania?
Domyślam się, że „nie”, tylko dlatego, że nie wydaje mi się, że jestem w stanie zbudować zwykłego kombinatora K z kombinacji , i , ale nie mam algorytmu do naśladowania ani dobrej intuicji na temat robienia rzeczy z tych kombinatorów.
Wygląda na to, że możesz zdefiniować
Moja próba udowodnienia, że nie była funkcjonalnie kompletna, zasadniczo próbowała wyczerpująco skonstruować każdą funkcję osiągalną z tych kombinatorów, aby pokazać, że osiągasz ślepy zaułek (funkcję, którą widziałeś wcześniej) bez względu na to, jakich kombinatorów używasz. Zdaję sobie sprawę, że niekoniecznie musi tak być w przypadku funkcjonalnie niekompletnych zestawów kombinacji (np. Sam kombinator nigdy nie będzie ślepy zaułek, gdy zostanie zastosowany do siebie), ale to była moja najlepsza myśl. Zawsze byłem w stanie użyć kombinatora aby wymknąć się z tego, co uważałem w końcu za ślepy zaułek, więc nie jestem już tak pewien, czy takie podejście jest wykonalne.
Zadałem to pytanie na StackOverflow, ale zachęcono mnie do opublikowania go tutaj. Otrzymałem kilka komentarzy do tego postu, ale nie jestem pewien, czy dobrze je zrozumiałem.
Premia: jeśli nie jest to kompletna podstawa, czy mimo to powstały język jest kompletny?