Czytałem (od Sława Pestowa), że czynnik był pod wpływem Lispa, ale nie jestem pewien, czy potrafię zrozumieć, w jaki sposób? Czy nie są to bardzo różne języki programowania?Wpływ Lisp na język programowania czynnikowego?
Odpowiedz
Mimo że język jest oparty na stosie, istnieje wiele elementów, które pokazują wyraźny wpływ seplenienia. Jako przykład podaj instrukcję IF. W dalszej części instrukcje if są warunkiem IF (jeśli true) ELSE (kod, jeśli false) THEN, a definicja If działa w środowisku wykonawczym, aby upewnić się, że działa właściwa gałąź. Jeśli w czynnik jest bezpośrednim tłumaczeniem, jeśli w seplenienie bierze prawdziwą ofertę i fałszywą ofertę i wykonuje poprawną. Edytuj: Kolejny to zakres dynamiczny, z którego słynie coś z CL. Jego zmienne leksykalne definiowane są przez wyrażenia let, podobnie jak seplenienie. (Let and let *)
System obiektowy, dla jednego: http://concatenative.org/wiki/view/Object%20system, przypomina CLOS.
Cóż, cała filozofia "kodu jako danych" jest również bardzo obecna w czynniku, od tego, co do tej pory widziałem. . Istnieją makra, możesz cytować kod i manipulować cytowanym kodem jako sekwencjami. Zasadniczo, notowania w Factor są równoważne z cytowaną listą/s-wyrażeniem w Lisp. Lisp idzie nieco dalej, używając wyrażeń s dla całego kodu.