Примечание: когда вы говорите «Может кто-нибудь помочь мне с этой ошибкой», укажите, какое сообщение об ошибке вы видите. Вся ваша программа не может быть ошибкой сама по себе. Но он может содержать ошибок, и при попытке запустить его может выдавать сообщения об ошибках.
Я предполагаю, что вы видели сообщения об ошибках. Включите их тоже, в следующий раз. Также скажите нам, что вы ожидали увидеть. Вы ожидали получить ошибку, которую видите?
Причина, по которой вы должны включить фактическое сообщение об ошибке, заключается в том, что проблема, с которой вы сталкиваетесь, может даже не иметь никакого отношения к тому, что вы считаете проблемой. В этом случае сообщение об ошибке позволяет нам убедиться, что мы на правильном пути в решении вашей проблемы.
Глядя на вашу программу, я думаю, что она синтаксически неполна. A let
должен иметь по крайней мере body
, иначе он не грамматичен в соответствии с правилами языка. Там нет тела, присутствующего в:
(let ((nodes (car lst))
(edges (cdr lst)))
)
(Аналогичное сообщение об ошибке на языке, подобном C, может появиться, если вы попытаетесь использовать оператор if
, но не включите тест.)
По крайней мере, вы можете включить какой-то заполнитель, пока не выясните, что вам действительно нужно вставить туда. Например:
(let ((nodes (car lst))
(edges (cdr lst)))
"fixme")
должен, по крайней мере, сделать программу синтаксически приемлемой. Хотя это пока не поможет.