Tempo total investido: cerca de uma hora, mas isso incluiu várias outras atividades matinais (café, manutenção de cães, soltando as galinhas.) Agora tenho um protótipo completo e funcionando de uma extensão Sqlite C para funções de comparação de vetores, e não nãoTenho que escrever uma única linha de codificação C.Ele escreveu a extensão como um arquivo chamado Vector_extension.c, compilou -o, acertou um bug e depois escreveu uma correção em um novo arquivo chamado vetor_extension_fixed.c.A função Vector_Similaridade calculou com sucesso a similaridade de cada vetor consigo mesmo, resultando em [0.999999994039535552, 0,9999999403953552], que é essencialmente 1,0 como esperado para vetores idênticos.Funciona como um grande conjunto de declarações da Union todas as consultas que se juntam a dados de PRAGMA_TABLE_LIST (), PRAGMA_TABLE_INFO () e PRAGMA_FOREIGN_KEY_LIST ().
Fonte: https://simonw.substack.com/p/building-and-testing-c-extensions