Zonnon - Zonnon
Paradigmas | Imperativo , estruturado , modular , orientado a objetos |
---|---|
Família | Wirth Oberon |
Projetado por | Jürg Gutknecht |
Desenvolvedor | ETH Zurique |
Apareceu pela primeira vez | 2013 |
Disciplina de digitação | Forte , híbrido ( estático e dinâmico ) |
Alcance | Lexical |
Influenciado por | |
Oberon , Pascal |
Zonnon é uma linguagem de programação de propósito geral na linha ou família das linguagens anteriores Pascal , Modula e Oberon . Jürg Gutknecht é o autor.
Seu modelo conceitual é baseado em objetos, definições, implementações e módulos. Seu modelo de computação é concorrente, baseado em objetos ativos que interagem por meio de diálogos controlados por sintaxe. A linguagem está sendo desenvolvida no Instituto de Sistemas de Computação ETH Zürich pelo Professor Jürg Gutknecht. Zonnon introduz o conceito de 'objetos ativos' que são usados para representar objetos concorrentes do mundo real dentro de programas de computador. O Zonnon Language Report foi escrito por Brian Kirk (diretor da Robinsons Associates) e David Lightfoot ( Oxford Brookes University ) trabalhando com Gutknecht (ETH, Zürich) e o Dr. Eugene Zueff (Евгений Зуев) ( Moscow State University ).
O primeiro livro sobre Zonnon foi publicado pela NI Lobachevsky State University de Nizhny Novgorod (também conhecida como Nizhni Novgorod State University).
Visão geral
Zonnon é um membro da família de linguagens Pascal, que tem duas consequências benéficas: a) é uma linguagem de propósito geral eb) é imediatamente familiar para programadores que usaram Pascal, Modula-2 e Oberon. A maioria dos programas Pascal do domínio de algoritmos e estruturas de dados são compilados com sucesso pelo compilador Zonnon após algumas pequenas modificações. No entanto, do ponto de vista da programação em grande escala, o Zonnon é muito mais elaborado em comparação com seus antecessores. Zonnon tem quatro tipos diferentes de unidades de programa: objetos, módulos, definições e implementações. Os dois primeiros são instanciados em tempo de execução , o terceiro é uma unidade de abstração de tempo de compilação e o quarto é uma unidade de composição. Aqui está uma breve caracterização:
- O objeto é um componente de programa de tempo de execução independente. Ele pode ser instanciado dinamicamente sob o controle do programa em multiplicidade arbitrária.
- O módulo pode ser considerado um objeto singleton cuja criação é controlada pelo sistema. Além disso, um módulo pode atuar como um contêiner de tipos de dados abstratos conectados logicamente , operadores e unidades estruturais do ambiente de tempo de execução. Em combinação com a relação de importação, a construção do módulo é uma ferramenta poderosa de estruturação do sistema.
- Definição é uma visão abstrata de um objeto (ou módulo) de uma determinada perspectiva. É uma faceta do objeto ou, em outras palavras, uma apresentação abstrata de um ou mais de seus serviços.
- A implementação normalmente fornece uma implementação padrão possivelmente parcial da definição correspondente. É uma unidade de reutilização e composição que é agregada ao espaço de estado de um objeto (ou módulo), seja em tempo de compilação ou em tempo de execução.
Modelo de composição
Zonnon usa um modelo de herança composicional baseado na agregação. Normalmente, um objeto (ou módulo) é composto de vários componentes funcionais, cada um deles se apresentando aos clientes na forma de uma definição abstrata. O conjunto de definições mais a interface intrínseca do objeto (que é o conjunto de todos os elementos públicos do objeto) constitui a interface entre o objeto e seus clientes.
Modelo de simultaneidade
Zonnon permite adicionar comportamento a objetos (e módulos). Para tanto, a noção de objeto ativo foi importada da linguagem Active Oberon e generalizada para um modelo unificado de atividades hierárquicas. As atividades são threads encapsulados que vêm em dois tipos: atividades locais e atividades do agente.
Atividades locais
As atividades locais expressam a dinâmica intrínseca do objeto. Um contexto típico é um bloco de declarações que representam a “lógica de lançamento” para um conjunto de atividades mutuamente independentes, com a suposição de que o fim do bloco atua como uma barreira que não pode ser ultrapassada antes que todas as atividades tenham terminado.
Atividades do agente
As atividades do agente controlam a interoperabilidade dos objetos em termos de diálogos formais. Cada atividade do agente dentro de um objeto “receptor” serve como um modelo de um diálogo formal entre algum chamador e o receptor. As atividades do agente geralmente implementam um analisador para alguma sintaxe predefinida que constitui um tipo de contrato entre os dois parceiros de comunicação. Os diálogos formais são uma generalização das chamadas de métodos assíncronos. Isso se reflete na forma de uma sintaxe emprestada de chamadas de métodos comuns.
Notas
Referências
- Gutnecht, Jürg e Eugene Zueff (Computer Systems Institute, ETH Zürich , Suíça). " Zonnon for .NET - Uma experiência de linguagem e compilador ." ( Arquivo , link Springer ) em: Böszörményi, László e Peter Schojer (editores). Modular Programming Languages: Joint Modular Languages Conference, JMLC 2003, Klagenfurt , Áustria , 25-27 de agosto de 2003, Proceedings . Springer , 29 de setembro de 2003. ISBN 3540407960 , 9783540407966.
Leitura adicional
- Fontes independentes
- (em russo) Kasyanov, Viktor Nikolaevich (Виктор Николаевич Касьянов). Язык программирования Zonnon: учебное пособие ("The Zonnon Programming Language. Manual do Aluno."). Novosibirsk State University (НГУ), 2010. ISBN 5943568859 , 9785943568855. Entrada do Google Livros , entrada do Catálogo, listado na página 7 ( Arquivo ( Arquivo )
- (em russo) Kasyanova, Elena Viktorovna (Елена Викторовна Касьянова). " MÉTODOS E FERRAMENTAS ADAPTADAS PARA APOIO DA EDUCAÇÃO À DISTÂNCIA NA PROGRAMAÇÃO ." ( "АДАПТИВНЫЕ МЕТОДЫ И СРЕДСТВА ПОДДЕРЖКИ ДИСТАНЦИОННОГО ОБУЧЕНИЯ ПРОГРАММИРОВАНИЮ") ( Arquivo ."( "АДАПТИВНЫЕ МЕТОДЫ И СРЕДСТВА ПОДДЕРЖКИ ДИСТАНЦИОННОГО ОБУЧЕНИЯ ПРОГРАММИРОВАНИЮ") ( Arquivo ) siberiano Divisão da Academia Russa de Ciências AP Ershov Instituto de Informática Sistemas (Институт cистем информатики им . А.П. Ершова СО РАН). Editado pelo prof. VN Kasyanov. Resumo em inglês ( Arquivo ( Arquivo )
- (em russo) Kasyanova, EV " The Programming Language Zonnon for .NET Framework ." ( "ЯЗЫК ПРОГРАММИРОВАНИЯ Zonnon ДЛЯ ПЛАТФОРМЫ .NET" "O Zonnon Linguagem de programação para a plataforma .NET") ( Arquivo ."( "ЯЗЫК ПРОГРАММИРОВАНИЯ Zonnon ДЛЯ ПЛАТФОРМЫ .NET" "O Zonnon Linguagem de programação para a plataforma .NET") ( Arquivo ) AP Ershov Institute of Informatics Systems, Russian Academy of Sciences , Siberian Branch. Resumo em inglês ( arquivo )
- (em russo) Kasyanova, EV " Curso introdutório de programação com base na linguagem Zonnon ." (ВВОДНЫЙ КУРС ПРОГРАММИРОВАНИЯ НА БАЗЕ ЯЗЫКА Zonnon) ( Arquivo ."(ВВОДНЫЙ КУРС ПРОГРАММИРОВАНИЯ НА БАЗЕ ЯЗЫКА Zonnon) ( Arquivo ) AP Ershov Instituto de Informática Sistemas. Resumo Inglês ( Arquivo )
- (em russo) " От Паскаля к языку Zonnon: реализация новых идей на платформе .NET ." ("De Pascal para Zonnon: Implementação de novas ideias na plataforma .NET") ( Arquivo . "(" De Pascal para Zonnon: Implementação de novas ideias na plataforma .NET ") ( Arquivo ) PC World ( Мир ПК ). 2003, No. 9. Disponível em Otkrytye Sistemy ( Открытые системы , "Open Systems"). Link alternativo , Arquivo , Arquivo
- Fontes do autor e / ou colaboradores
- Gutknecht, Jürg, Vladimir Romanov e Eugene Zueff. " O projeto Zonnon: um experimento de compilador e linguagem .NET ." ( Arquivo . "( Arquivo )" Procedimentos da conferência .NET Technologies 2005. "Copyright UNION Agency - Science Press, Plzen , República Tcheca . ISBN 80-86943-01-1 .
- Zouev, Eugene. " Projeto Zonnon: a linguagem, o compilador, o ambiente ." ( Arquivo . "( Arquivo ) Bergen Language Design Laboratory. Bergen University . 19 de maio de 2010.
- Gutknecht, Jürg e Roman R. Mitin. " Projeto Zonnon: uma linguagem de composição para computação distribuída ." IEEE Computer Society Xplore . Composition-Based Software Systems, 2008. ICCBSS 2008. Sétima Conferência Internacional sobre Composition-Based Software Systems (ICCBSS 2008). Madri, Espanha. 25–29 de fevereiro de 2008. p. 148 - 153. Print ISBN 978-0-7695-3091-8 . DOI 10.1109 / ICCBSS.2008.10. Número de acesso INSPEC 9905083.
- Gutknecht, Jürg e Eugene Zueff (Editores: Brian Kirk e David Lightfoot). " Relatório de idioma Zonnon ." ( Arquivo . "( Arquivo ) Instituto Federal Suíço de Tecnologia de Zurique . Dezembro de 2005.
- Gutknecht, Jürg, Roman Mitin, Nikolai Zolotykh e Nina Gonova. " Implementando tipos de dados matemáticos no .NET ." ( Arquivo . "( Arquivo )
- Gutknecht, Jürg e Eugene Zueff. " Experiência de linguagem Zonnon ou como implementar um modelo de objeto não convencional para .NET ." ( Arquivo . "( Arquivo )
- Kirk, Brian, David Lightfoot e Jürg Gutknecht. " The Concepts of Zonnon Uma linguagem para engenharia de sistemas com módulos, objetos e simultaneidade ." ( Arquivo . "( Arquivo )
- (em russo) Mitin, RO (Р.О. Митин) " ЯЗЫК ПРОГРАММИРОВАНИЯ Zonnon (ОСНОВЫ) ." ("The Zonnon Programming Language (Overview). Student's Manual") ( Archive . "(" The Zonnon Programming Language (Overview). Student's Manual ") ( Arquivo ) NI Lobachevsky State University , 2004.
- (em russo) Zueff, Eugene A. Slides de PowerPoint em russo do: Compilador Zonnon: Arquitetura, Integração, Tecnologia. Conferência da Microsoft, 15 a 17 de junho de 2003, Moscou. ( Arquivo do: Compilador Zonnon: Arquitetura, Integração, Tecnologia. Conferência da Microsoft, 15–17 de junho de 2003, Moscou. ( Arquivo )