2011/8/22 Leandro Guimarães Faria Corcete DUTRA <[email protected]>: >> Impressão minha ou vc propositalmente ignorou o Teorema de Codd? > > Hm, sem presunção de boa vontade fica difícil debater.
Estou assumindo minha boa vontade. mas pouca dedicação e tempo para o assunto. > Mas, presumindo que não houvesse presunção de má vontade, o teorema > de Codd nada tem a ver com a mistureba que a SQL é. Ele equivale álgebra e > cálculo; e a SQL é, de fato, não apenas ‘relacionalmente’ como Só pra não virar ainda mais a "salada": Eu não quiz dizer q a a SQL faz parte deste teorema – ele parece ser mais antigo q meu pai, enquanto a SQL não é – mas se for um pouquinho além das linguagens declarativas, vai perceber q ambas (Quel e SQL) são baseadas no cálculo de tuplas do cálculo relacional que compõe o teorma, entendeu? Diga-se de passagem, o cálculo de domíinio também utiliza alguns poucos operadores herdados do cálculo de tuplas e ambos compõe o que conhecemos por cálculo relacional que é equivalente a álgebra relacional, como já mencionado pelo Prof. Euler. > computacionalmente completo; mas a mistura de álgebra e cálculo, mais os > desvios do modelo relacional (que, infelizmente, o Ingres Quel acabou > incorporando), mais todos os outros defeitos da linguagem em si, tornam a > SQL uma linguagem muito inferior ao que poderia ter sido. Concordo com as deficiências da SQL (é ignorância discordar), mas daí pra substituir pelo Quel, sei lá... > O Date conta essa história, acho que não a preciso repetir… Sim, acho que lá está mais claro, inclusive para seres mortais tal como sou. >> Definitivamente isto não é verdade, pelo menos não nos tempos atuais. > > Referes-te ao Quel abastardado pelo SQL que o Ingres carrega? Já falei que sou novato neste universo, conheci o Ingres num único trabalho relâmpago que fizemos para uma revista, e só tive a oportunidade de utilizar uma linguagem (Quel) nele. De lá pra cá somente baixei o código fonte pra entender um pouquinho melhor sobre suas estruturas e conceitos e sinceramente nada novo. Quer algo realmente conceitualmente interessamte? Veja a implementação do Rel ou talvez do Alphora Datafor (caso tenha acesso ao fonte). Esses sim, parecem ter feito valer as especificações do Tutorial D e da álgebra relacional em si. >> Trabalhar explicitamente utilizando RelVars não pode ser mais simples >> do que acessar os dados diretamente. > > Eu sabia que eu estava forçando a barra… pronto, agora já não entendi nada. Relvar = Variável de relação; range for c is cliente /* c é a variável da relação cliente incluindo suas restrições (restrictions) declare cursor cu for retrieve (total=max(cu.id_cliente)) /* cursor open cursor cu loop [...] /* projeção ... Não preciso fazer a equivalência em SQL, preciso? >> Aparte das questões do EQUEL (que o postgres resolve muito bem com >> ECPG), qual exatamente outro aspecto do Quel que o deixa mais >> "poderoso" que o SQL? > > Ao ser baseado no cálculo, e não numa mistura, é mais expressiva. Qual cálculo? >> Se operadores, rewrite, objetos, recursividade não tem nada a ver com >> linguagem, então definitivamente percebi que não sei o q estou >> falando. > > Nada disso é particular ao SQL ou ao Quel, podendo ser implementado nas > duas. Só que, no Quel, com mais elegância. Hmm.. talvez falte a leitura: "The design of Postgres" ? >>> Pelo contrário. Ter duas linguagens pode ser mais simples do ponto de >>> vista de manutenção do código-fonte do SGBD, mas ter uma única linguagem >>> complexa e inconsistente é ruim para o usuário. >> >> Não é mais simples manter duas linguagens no SGBD, acredite. > > Definitivamente, ou não consigo me expressar ou, no afã de argumentar, não > me lêem. Acabas de repetir o que eu disse sem perceber o que eu quis dizer. Desculpe novamente, acho q vc já me conhece o suficiente e portanto sabe da minha conhecida dificuldade de entender e se expressar. Não vou ligar se quiser encerrar o discurso por aqui, mas prometo q se houverem próximos e-mails tentarei me concentrar ao máximo antes de responder. > Sim, concordo que manter duas linguagens é mais complicado, e entendo > que essa pode ter sido a razão de abandonar a Quel. Mas, para o aprendiz, > ter uma linguagem baseada em cálculo, e não a bagunça que o SQL é, seria > mais simples e levaria a uma melhor qualidade de aprendizado. Concordo, mas substituindo a linguagem por uma implementação mais elegante e próxima da álgebra. >> Simplicidade é subjetivo. > > Não. Sim. Abraço! -Leo -- Leonardo Cezar http://postgreslogia.wordpress.com _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
