ufm on Nostr: еще немного о программировании и ЛЛМ. Заметил, ...
еще немного о программировании и ЛЛМ.
Заметил, что ЛЛМ иногда пишет на эрланге так, как будто это писал программист на питоне. Или го. Вобщем это можно сделать более идеоматически. Высказал претензию.
Говно вопрос, скзала ЛЛМ и родила вот такое:
set_error(genErr) -> genErr;
set_error(noAccess) -> noAccess;
set_error(wrongType) -> wrongType;
set_error(wrongLength) -> wrongLength;
set_error(wrongEncoding) -> wrongEncoding;
set_error(wrongValue) -> wrongValue;
set_error(noCreation) -> noCreation;
set_error(inconsistentValue) -> inconsistentValue;
set_error(resourceUnavailable) -> resourceUnavailable;
set_error(authorizationError) -> authorizationError;
set_error(notWritable) -> notWritable;
set_error(inconsistentName) -> inconsistentName;
set_error(_) -> genErr.
И что самое интересное - да. Это идеоматически наиболее правильно. Это можно написать как-то так (как оно, кстати, и было до этого написано):
set_error(Status) ->
case lists:member(Status, [
genErr,
noAccess,
wrongType,
wrongLength,
wrongEncoding,
wrongValue,
noCreation,
inconsistentValue,
resourceUnavailable,
authorizationError,
notWritable,
inconsistentName
]) of
true -> Status;
false -> genErr
end.
Но это именно "Гошечный программист пипшет на эрланге".
Published at
2026-10-01 08:30:36 UTCEvent JSON
{
"id": "ba5c09d5be1cd235946c4668d0a66d8fb1eed0e399cbcfced4e1b685ac7b71f0",
"pubkey": "77a7edb0ec431423dea9c30467982c1ae66922d57a7759fc62d155c49aee0443",
"created_at": 1790843436,
"kind": 1,
"tags": [],
"content": "еще немного о программировании и ЛЛМ.\n\nЗаметил, что ЛЛМ иногда пишет на эрланге так, как будто это писал программист на питоне. Или го. Вобщем это можно сделать более идеоматически. Высказал претензию.\nГовно вопрос, скзала ЛЛМ и родила вот такое:\n\nset_error(genErr) -\u003e genErr;\nset_error(noAccess) -\u003e noAccess;\nset_error(wrongType) -\u003e wrongType;\nset_error(wrongLength) -\u003e wrongLength;\nset_error(wrongEncoding) -\u003e wrongEncoding;\nset_error(wrongValue) -\u003e wrongValue;\nset_error(noCreation) -\u003e noCreation;\nset_error(inconsistentValue) -\u003e inconsistentValue;\nset_error(resourceUnavailable) -\u003e resourceUnavailable;\nset_error(authorizationError) -\u003e authorizationError;\nset_error(notWritable) -\u003e notWritable;\nset_error(inconsistentName) -\u003e inconsistentName;\nset_error(_) -\u003e genErr.\n\nИ что самое интересное - да. Это идеоматически наиболее правильно. Это можно написать как-то так (как оно, кстати, и было до этого написано):\n\nset_error(Status) -\u003e\n case lists:member(Status, [\n genErr,\n noAccess,\n wrongType,\n wrongLength,\n wrongEncoding,\n wrongValue,\n noCreation,\n inconsistentValue,\n resourceUnavailable,\n authorizationError,\n notWritable,\n inconsistentName\n ]) of\n true -\u003e Status;\n false -\u003e genErr\n end.\n\nНо это именно \"Гошечный программист пипшет на эрланге\".",
"sig": "2d2cf06d251b993e2816da98434a4e75b67414477cdae91ced4027f25180d2a8a6d98d3506c2aed5f6bd13c993cc25ecd36c63e37477b7b14144a8d6f370af7d"
}