1 |
Projeto de uma linguagem de programaçãoCarvalho, Claúdio Sérgio da Ros de, 1962- 22 August 1989 (has links)
Orientador: Tomasz Kowaltowski / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Matematica, Estatistica e Ciencia da Computação / Made available in DSpace on 2018-07-14T06:12:35Z (GMT). No. of bitstreams: 1
Carvalho_ClaudioSergiodaRosde_M.pdf: 4046863 bytes, checksum: 9f43bdd999d8967273f98101a319ae69 (MD5)
Previous issue date: 1989 / Resumo: A proposta deste trabalho é a apresentação dos aspectos principais da linguagem de programação MG, que foi engendrada com o objetivo de incorporar algumas facilidades, chamadas do baixo nível, da linguagem C à estrutura da linguagem Modula-2. Como evoluções de MC em relação a Modula-2 e C podem-se citar, entre outras, a inclusão de tratamento de exceções, vetores com limites abertas, subprogramas com número variável de parâmetros c processos. O resultado é uma linguagem simples e precisa, de propósito geral, mas adequada à programação de sistemas / Abstract: Not informed / Mestrado / Mestre em Ciência da Computação
|
2 |
Agents anywhere (AA): uma linguagem para o desenvolvimento de aplicações multiagentes ubíquasEscobar, Mauricio da Silva January 2013 (has links)
Made available in DSpace on 2013-08-07T18:43:31Z (GMT). No. of bitstreams: 1
000448316-Texto+Completo-0.pdf: 3103458 bytes, checksum: b271ba4f6806f788988fdb8c59e61efc (MD5)
Previous issue date: 2013 / In recent years, much research and development effort has been directed towards the fields of ubiquitous computing and multi-agent systems. Further progress is needed for taking full advantage of such technologies in order to provide a degree of intelligence, flexibility, and abstraction in building ubiquitous applications. This work presents the design of a programming language for the development of ubiquitous multi-agent applications. The language aims to define ubiquitous concepts at the same level of abstraction as multi-agent systems concepts, where important ubiquity concepts such as locations and devices are first-class abstractions. The design of the language was based on FAML, a generic meta-model for MAS development, and also draws upon some of the fundamental features of agent-oriented programming languages. / Nos últimos anos muitos esforços em pesquisas e desenvolvimento tem sido direcionados para a área de computação ubíqua e sistemas multiagentes (SMAs). O avanço nessas áreas é necessário para obter vantagem na utilização de suas tecnologias a fim de prover inteligência, flexibilidade e novas abstrações na construção de aplicações ubíquas. Nesse contexto é onde a inteligência artificial e as técnicas de sistemas multiagentes desempenharão um papel importante. Este trabalho apresenta a construção de uma linguagem de programação para aplicações multiagentes ubíquas. A linguagem define conceitos de ubiquidade no mesmo nível de abstração dos conceitos de sistemas multiagentes, onde conceitos importantes de ubiquidade como localização e dispositivos são abstrações de primeira ordem. O projeto da linguagem baseia-se no metamodelo FAML, um metamodelo genérico para o desenvolvimento de SMAs, e também em funcionalidades essenciais de linguagens de programação orientadas a agentes.
|
3 |
Argumentation-based dialogues for task reallocation among rational agentsPanisson, Alison Roberto January 2015 (has links)
Made available in DSpace on 2015-09-25T02:04:58Z (GMT). No. of bitstreams: 1
000475171-Texto+Completo-0.pdf: 23619666 bytes, checksum: 28243e1337b86bf3d0ef2cd45f2a0717 (MD5)
Previous issue date: 2015 / Argumentation appears in two main lines of research in the field of multi-agent systems: argumentation-based reasoning and argumentation-based dialogues. In this document we present an approach exploring both of those lines of research. First, we develop an argumentation-based reasoning mechanism in an agent-oriented programming language based on the BDI architecture. This reasoning mechanism is based on a defeasible logic formalism and the notion of defeasible semantics. Using that argumentation-based reasoning mechanism, agents can reason under uncertainty and can use arguments to supports their claims when engaging in multi-agent dialogues. Second, we give operational semantics to a set of speech acts found in the literature on argumentation-based dialogues. That semantics is also given in the context ofBDI-inspired agentorlented programming languages. Next, we define a protocol for argumentation-based dialogues for task reallocation, using the reasoning mechanism and the operational semantics. We prove that the protocol terminates and that it can reach ideal solutions under certain assumptions. Finally, we descrlbe an application domain used as case study, and we evaluate our work with some examples of real problems from that application scenario. / Argumentação aparece em duas principais linhas de pesquisa no campo de sistemas multi-agentes: raciocínio baseado em argumentação e diálogos baseados em argumentação. Neste documento nós apresentamos uma abordagem que explora essas duas linhas de pesquisa. Primeiro) nós desenvolvemos um mecanismo de raciocínio baseado em argumentação em uma linguagem de programação orientada a agentes, a qual é baseada na arquitetura BDI. Este mecanismo de raciocínio é baseado no formalismo de defeasible logic e na noção da semântica defeasible. Usando este mecanismo de raciocínio baseado em argumentação, agentes podem raciocinar sobre incertezas e podem usar argumentos para dar suporte às suas alegações quando envolvidos em diálogos multiagentes. Segundo, nós damos semântica operacional para um conjunto de atos de fala encontrados na literatura de diálogos baseados em argumentação. Esta semântica é também dada no contexto de linguagens de programação orientada a agentes inspiradas pela arquitetura BDI. Além dissot nós definimos um protocolo para diálogos baseados em argumentação para realocação de tarefas, considerando o mecanismo de raciocínio e a semântica operacional apresentados. Provou-se que o protocolo termina e que atinge soluções ideais, dados alguns pressupostos desse trabalho. Finalmente, nós descrevemos um domínio de aplicação usado como estudo de caso, e avaliamos nosso trabalho com alguns exemplos de problemas reais dentro desse cenário da aplicação.
|
4 |
Extensões orientadas a objetos da linguagem LISP : uma implementação do CLOSAndré de Souza Mello Valente 01 August 1990 (has links)
A orientação a objetos, enquanto modelo de organização de linguagens de programação,vem tomando espaço e importância cada vez maiores a partir do início da década de 80. Entre as linguagens de programação orientadas a objetos existentes, destacam-se por seu poder de expressão as extensões orientadas a objetos da linguagem Lisp. Lisp é uma importante linguagem de programação, de características funcionais, cujas origens remontam aos primórdios da Computação. Um passo à frente nesse panorama se coloca o Common Lisp Object System(eLOS). Mais que apenas uma extensão de Lisp orientada a objetos, o CLOS se propõe a fundir os paradigma funcional à orientação a objetos em uma linguagem rica, poderosa e eficientemente implementável. Neste trabalho, apresentamos uma implementação didática, portável e extensível do CLOS, apontando as soluções dadas aos principais problemas que foram deixados em aberto na sua especificação. Além disso, propomos um framework para descrição e análise de linguagens de programação orientadas a objetos,'; que servirá. de arcabouço para uma análise comparativa das principais extensões de Lisp orientadas a objetos (Flavors, Loops, ObjVlisp, CommonObjects, CLOS) e de uma descrição de duas das mais importantes linguagens orientadas a objetos: Smalltalk e C++. Por fim, propomos uma extensão do eLOS para solução distribuída de problemas baseada na arquitetura do Quadro-Negro (Blackboard), o DCK (a Distributed CLOS Kernel). Essa proposta utiliza um kernel para solução distribuída de problemas que opera sob Unix, chamado DPSK.
|
5 |
Signo-C : uma ferramenta para integração de ambientes de uma fábrica de softwareJosé Dias Lana Neto 01 December 1990 (has links)
Esta dissertação apresenta uma linguagem de programação orientada a objetos como ferramenta para. produzir linguagens de composição e para dar suporte aos diversos seg~ mentos que compõem o Projeto Fábrica de Software. Signo-C, a linguagem em proposição,foi implementada utilizando~se as funcionalidades do gerenciador de objetos SIGNO, uma das ferramentas desenvolvidas no projeto. Atualmente a linguagem conta com um Bancode Objetos, o Banco número um, um dos quinze Bancos de Objetos disponíveis para o SIGNO. Signo-C deverá suprir as deficiências da linguagem até então disponível no pro~jeto no que diz respeito a mensagens. A linguagem foi desenvolvida no ambiente UNIX, utilizando-se estação de trabalho SUN e tendo como base a linguagem C. A linguagem proposta. pode ser enquadrada no grupo de linguagens híbridas orientadas a objetos. Signo-C apresenta ainda sintaxe apropriada para mensagens e possibilidade de escolha do uso de early binding ou de late binding na amarração de métodos. A linguagem conta ainda com uma Cache de Afétodos que visa a reduzir o tempo de pesquisa dos métodos nas mensagens que utilizam late binding. A verificação de tipos dos parâmetros da mensagem é feita em tempo de compilação e, nos casos em que tal prática não é possível, a verificação é efetuada em tempo de execução. A sintaxe proposta para o envio de mensagens assegura maior simplicidade de codificação, va1endo-se de parâmetros default, reduzindo a possibilidade de erros. Finalmente a linguagem apresenta recursos para futuras pesquisas sobre a utilização de early binding e late binding em mensagens.
|
6 |
Um editor orientado a Fortran 77Walter Luiz Caram Saliba 01 May 1992 (has links)
Um editor orientado a uma linguagem de programação explora conhecimentos sobre a mesma para conduzir o processo de edição e prover um auxílio mais efetivo ao usuário. Este auxílio geralmente é expresso por um maior controle sob a forma do texto editado e pela detecção de erros no mesmo. Estas capacidades requerem que editores desta natureza possuam uma estrutura mais complexa: usualmente eles resultam da composição entre um editor de textos comum e analisadores léxico, sintático e semântico para a linguagem alvo. Este trabalho trata da concepção e implementação de um editor orientado a FORTRAN 77. Este editor é uma das ferramentas componentes do Ambiente de Reestruturação de Programas do Projeto Computação Científica do CTA-IEAv. A necessidade de manutenção de informações atualizadas sobre a árvore sintática e sobre os erros detectados nos programas editados exige que o editor recompile-os freqüentemente. Mostra-se que a utilização de princípios convencionais de compilação deteriora o desempenho do editor na medida em que o tamanho dos programas editados aumenta. Como alternativa, são propostos algoritmos incrementais que reaproveitam informações de análises anteriores para reduzir o tempo gasto na compilação. Como conseqüência, impõe-se uma nova estrutura ao compilador, onde aspectos livres e dependentes de contexto são tratados separadamente.
|
7 |
JavAsync : extensão da linguagem Java para tratamento de eventos assíncronosCarlos Rafael Gimenes das Neves 05 December 2013 (has links)
Quando contando apenas com o que é oferecido por linguagens orientadas a objetos, como o Java, os desenvolvedores tendem a utilizar apenas chamadas síncronas a métodos, utilizando-se de artifícios para obter comportamento assíncrono, o que comumente quebra o modelo original do sistema, acrescentando uma série de efeitos colaterais indesejados, tais como acoplamento desnecessário entre classes e construções passíveis de erros. O acoplamento desnecessário normalmente aparece quando uma classe precisa ser notificada sobre a ocorrência de eventos em outra classe na mesma pilha de chamadas em tempo de execução. Propomos uma extensão à linguagem Java para permitir a execução assíncrona de métodos, a notificação e o tratamento assíncronos de eventos ocorridos durante a execução normal do programa em classes presentes na pilha de chamadas corrente, como uma alternativa nativa, simples e que não force acoplamento adicional entre as classes envolvidas. Denominamos JavAsync à linguagem Java assim estendida. Com essa extensão, esperamos que os desenvolvedores possam utilizar comunicação assíncrona desde o início do ciclo de desenvolvimento, sem que precisem realizar modificações à estrutura original do software em desenvolvimento e sem que precisem se preocupar com threads e com o registro dos tratadores de eventos.
|
8 |
Game design for a serious game to help learn programmingRomo, Enrique Kato January 2010 (has links)
Tese de mestrado. Multimédia. Faculdade de Engenharia. Universidade do Porto. 2010
|
9 |
Tecnologias multimédia na auto-aprendizagem de lógica e linguagens de programaçãoCastro, António Abel Vieira de January 2005 (has links)
Tese de mestrado. Engenharia Informática. Faculdade de Engenharia. Universidade do Porto. 2005
|
10 |
00Erlang uma extensão de Erlang Orientada a ObjetosSILVA JÚNIOR, Jucimar Maia da, CARVALHO JÚNIOR, Francisco Heron de 31 July 2013 (has links)
Submitted by Daniella Sodre (daniella.sodre@ufpe.br) on 2015-04-17T14:15:28Z
No. of bitstreams: 2
TESE Jucimar Maia da Silva Júnior.pdf: 4954306 bytes, checksum: fbddc0017ae748afd4a4afa5751c4a17 (MD5)
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5) / Made available in DSpace on 2015-04-17T14:15:28Z (GMT). No. of bitstreams: 2
TESE Jucimar Maia da Silva Júnior.pdf: 4954306 bytes, checksum: fbddc0017ae748afd4a4afa5751c4a17 (MD5)
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
Previous issue date: 2013-07-31 / Jogos via Internet, redes sociais e as novas aplicações web demandam acesso simultâneo e
interativo de milhares (às vezes milhões) de pessoas. Esses sistemas são quase sempre
desenvolvidos usando linguagens de script como PHP ou usando frameworks baseados em
linguagens como Java, Ruby ou Pyhton. À proporção que o acesso a esses sistemas cresce, os
fornecedores de tais serviços necessitam atender a novas demandas por meio da substituição de
hardware por modelos mais potentes, aumentando seus custos operacionais. Quando o nível de
acesso cresce drasticamente, o projetista se vê forçado a reprojetar toda a arquitetura do sistema
migrando para soluções complexas usando Java Enterprise Edition (JEE) ou Node.js. Essas
soluções também demandam mais e mais servidores. O problema possui uma raiz mais profunda:
as linguagens de programação usadas para o desenvolvimento de sistemas não foram projetadas
para suportar concorrência massiva. Linguagens com suporte a concorrência baseadas no modelo
de memória compartilhada não possuem a escalabilidade necessária para atender a demanda. Para
resolver os problemas ocasionados pela concorrência massiva, os desenvolvedores estão optando
por usar linguagens funcionais como Scala e Erlang na arquitetura do sistema ao contrário de
linguagens orientadas a objetos como Java. Mas Erlang não possui uma sintaxe própria para
programação orientada a objetos. Este trabalho mostra o desenvolvimento de uma extensão orientada a objetos para a linguagem Erlang, chamada ooErlang, que possui uma melhor
expressividade para resolução de problemas “do mundo real” e que não degrade o bom
desempenho da linguagem em aplicações que demandam alto tráfego de dados e fina granularidade
computacional, tal qual em programas Web 2.0. Assim sendo, o nicho da extensão aqui apresentada
é o mesmo de Erlang: desenvolver sistemas backend para grandes aplicações onde a concorrência
massiva e tolerância a falhas são requeridas.
|
Page generated in 0.0227 seconds