Saturday, 28 October 2017

Tk system trading no Brasil


Por John Ousterhout As pessoas muitas vezes me perguntam como eu entendi a idéia para o Tcl e por que tornou-se tão popular. Nesta página, tentei reconstruir os processos de pensamento que levaram a Tcl e Tk e traçar a evolução de Tcl e Tk na última década, juntamente com meu caminho de Berkeley para Sun para Scriptics. Como você verá, os começos do Tcls foram muito modestos, o sucesso do sistema foi uma surpresa para mim, e é apenas em retrospectiva que eu comecei a entender os motivos da popularidade de Tcls. A linguagem de script Tcl surgiu do meu trabalho em ferramentas de design para circuitos integrados na Universidade da Califórnia, em Berkeley, no início da década de 1980. Meus alunos e eu tínhamos escrito várias ferramentas interativas para design IC, como Magic e Crystal. Cada ferramenta precisava ter uma linguagem de comando (naqueles dias, as pessoas costumavam invocar ferramentas, digitando comandos, as interfaces de usuário gráficas ainda estavam em uso generalizado). No entanto, nosso principal interesse era nas ferramentas, não em seus idiomas de comando. Assim, não investimos muito esforço nos idiomas de comando e as línguas acabaram sendo fracas e peculiares. Além disso, o idioma para uma ferramenta não poderia ser transferido para o próximo, então cada ferramenta acabou com um idioma de comando diferente. Depois de um tempo, isso tornou-se bastante embaraçoso. No outono de 1987, enquanto sabático no Laboratório de Pesquisa Ocidental dos DECs, tive a idéia de construir uma linguagem de comando embutida. A idéia era gastar um esforço extra para criar um bom idioma interpretado e, além disso, construí-lo como um pacote de biblioteca que poderia ser reutilizado em muitas aplicações diferentes. O intérprete de linguagem proporcionaria um conjunto de instalações relativamente genéricas, como variáveis, estruturas de controle e procedimentos. Cada aplicativo que usou o idioma adicionaria seus próprios recursos ao idioma como extensões, para que o idioma possa ser usado para controlar o aplicativo. O nome Tcl (Tool Command Language) derivou desse uso pretendido. A noção de incorporação é um dos aspectos mais exclusivos do Tcl, e isso me levou aos três objetivos gerais para o idioma: o idioma deve ser extensível. Deve ser muito fácil para cada aplicativo adicionar seus próprios recursos aos recursos básicos do idioma, e os recursos específicos da aplicação devem parecer naturais, como se tivessem sido projetados para o idioma desde o início. O idioma deve ser muito simples e genérico, para que ele possa funcionar facilmente com muitas aplicações diferentes e para que ele não restrinja os recursos que os aplicativos podem fornecer. Uma vez que a maioria das funcionalidades interessantes virão do aplicativo, o principal objetivo do idioma é integrar ou colar as extensões. Assim, o idioma deve ter boas facilidades para a integração. Comecei a trabalhar na Tcl quando voltei do início do ano sabático em 1988 e comecei a usar a primeira versão do Tcl em um editor de texto gráfico na primavera de 1988. Desta vez eu deixei de trabalhar em ferramentas de design IC na minha pesquisa, Então os experimentos com Tcl foram principalmente acadêmicos: eu não pensei que alguém, além de mim, estaria interessado em uma linguagem de comando embutida. Um dos meus outros interesses na época eram as interfaces de usuário gráficas. À medida que as interfaces gráficas se tornaram cada vez mais populares na década de 1980, percebi que a complexidade do software interativo estava aumentando rapidamente. Os novos desenvolvimentos mais interessantes pareciam exigir grandes projetos com enormes investimentos. Como professor com recursos modestos, isso me preocupou: seria impossível para pequenas equipes, como meus grupos de pesquisa, criar sistemas interativos inovadores, concluí que a única esperança para nós era reduzir os requisitos de recursos através da construção de grandes sistemas com componentes reutilizáveis. Se a maioria da complexidade de um sistema estivesse nos componentes, e se pudéssemos levar os componentes para a frente de sistema para sistema, talvez possamos construir grandes sistemas poderosos com equipes pequenas. Seria preciso um pouco de trabalho para desenvolver os componentes, mas isso poderia ser feito gradualmente ao longo do tempo, talvez por vários grupos menores trabalhando juntos. Também pensei que o design baseado em componentes não funcionaria a menos que existisse um mecanismo poderoso e flexível para integrar os componentes. Esses pensamentos ocorreram pouco depois de ter começado a pensar sobre o Tcl, e ocorreu-me que uma linguagem de comando embutida, como a Tcl, também pode ser útil como linguagem de script para integrar componentes. Eu decidi testar essa teoria criando um conjunto de componentes GUI como uma extensão Tcl e usando o Tcl para montar os componentes em interfaces gráficas de usuário. Esta extensão tornou-se Tk. Comecei a trabalhar na Tk no final de 1988, mas era um projeto a tempo parcial, então demorou cerca de dois anos antes de haver funcionalidades suficientes para que Tk fosse útil. Não lembro mais exatamente quando comecei a dar Tcl a outras pessoas. Em 1989, eu estava usando o Tcl em alguns projetos, e acredito que fiz uma palestra sobre a Tcl durante a Conferência de Ligação Industrial de Berkeley, onde várias centenas de pessoas da indústria vieram a Berkeley para ouvir sobre pesquisa em nosso departamento. Eu acredito que isso levou a convites para dar conversas sobre o Tcl em algumas empresas interessadas, e que algumas pessoas nessas conversas perguntaram se poderiam ter cópias da Tcl. Em qualquer caso, entreguei algumas cópias do Tcl aos primeiros adotantes em 1989. Em janeiro de 1990, apresentei um documento sobre a Tcl na Conferência USENIX. A conversa contou com a presença de várias centenas de pessoas e gerou interesse suficiente que muitas pessoas começaram a me pedir cópias do Tcl. Por volta desse tempo eu decidi fazer o código fonte Tcl livremente disponível em nosso site de FTP em Berkeley. Uma vez que isso aconteceu, o uso de Tcl começou a se espalhar de boca em boca pela Internet. Uma das pessoas na apresentação do USENIX foi Don Libes do Instituto Nacional de Padrões e Tecnologia. Don estava desejando há algum tempo para construir um programa para automatizar aplicações interativas do Unix, mas o projeto estava paralisado porque precisava de uma boa linguagem de comando e Don não tinha tempo para construir um. Depois de ouvir minha conversa, Don correu para casa, baixou o Tcl, criou uma maravilhosa aplicação chamada Expect e escreveu um documento a tempo para o prazo de entrega para a próxima Conferência USENIX. Todo esse processo demorou apenas três semanas. Don fez Esperar livremente disponível depois de apresentar seu artigo no verão de 1990, e tornou-se um sucesso instantâneo entre os administradores do sistema. Esperar não foi apenas o primeiro aplicativo Tcl amplamente distribuído, mas por muitos anos foi o mais popular. Muitos dos primeiros usuários do Tcl aprenderam sobre isso usando o Expect. As características básicas da Tk tornaram-se utilizáveis ​​no final de 1990 e apresentei um artigo sobre a Tk na Conferência USENIX e a Conferência X em janeiro de 1991. Dentro de algumas semanas dessas conferências fiz a primeira versão da Internet da Tk. A primeira versão do Tk não tinha vários widgets importantes (por exemplo, não tinha nenhum widget de texto de várias linhas), mas no verão de 1992 eu tinha adicionado um widget de texto e um poderoso widget de tela. Neste ponto, o uso de Tk começou a aumentar drasticamente. O uso de Tcl e Tk cresceu aproximadamente uma ordem de grandeza a cada ano no início da década de 1990, de alguns usuários em 1989 a várias dezenas de milhares em 1993. Havia dois motivos principais para esse crescimento. O primeiro motivo para o crescimento do uso do TclTk foi que forneceu a maneira mais fácil de criar interfaces gráficas de usuário no Unix (naqueles dias Tcl funcionava somente em sistemas Unix). As facilidades do Tks GUI foram aplicações muito simples e muito poderosas e interessantes podem ser escritas inteiramente no Tcl, sem escrever nenhum código C. As alternativas baseadas em C, como o kit de ferramentas Motif, foram muito mais complicadas, mas proporcionaram menos funcionalidades. Ficou rapidamente claro que as GUIs poderiam ser criadas com 5-10x menos esforço em Tcl do Motif. Também revelou que muitas pessoas na indústria estavam tão preocupadas quanto eu era o alto custo do desenvolvimento de aplicativos interativos. O segundo motivo para a popularidade do Tcl foi a sua natureza embutida. Quando comecei no Tcl, presumi que ninguém além de mim se importaria com uma linguagem de comando incorporável, mas estava errado. Muitas pessoas, incluindo Don Libes e outros, queriam criar aplicativos que fossem scripts e extensíveis, mas não tiveram tempo para construir um idioma próprio. Por ser embutido, a Tcl forneceu uma solução perfeita para essas pessoas. Como resultado, a Tcl acabou por ser usada em aplicações que vão do estoque comercial até a visualização científica para a automação de fabricação. Fora dessa dicotomia no uso cresceu uma discussão que se repete todos os anos ou dois na comunidade de usuários do Tcl. Muitos usuários do Tcl afirmam que o Tk é o único motivo pelo qual eles usam o Tcl. Alguns deles nem sequer gostam do idioma Tcl e desejam que o Tk possa ser acoplado com uma linguagem de script diferente (na verdade, isso aconteceu várias vezes, incluindo TkPerl e Python). Um grupo diferente argumenta que a Tcl é tudo que eles importam porque eles usam isso como uma linguagem de script incorporada, muitas vezes sem Tk, e como as propriedades de idiomas para esse propósito. Em certo sentido, ambos os grupos estão certos. À medida que o uso de Tcl cresceu no início dos anos 90, uma comunidade se formou em torno do idioma, contribuindo com muitas extensões poderosas e fornecendo suporte para novos usuários. Dois dos primeiros pioneiros foram Mark Diekhans e Karl Lehenbauer. Eles escreveram TclX, que foi uma das primeiras extensões Tcl livremente disponíveis. O TclX forneceu acesso a arquivos, manipulação de data e hora e muitas outras facilidades úteis. Ao longo do tempo, os recursos do TclX provaram ser tão importantes que muitos deles foram incorporados nos lançamentos base do Tcl. Muitos outros pioneiros da Tcl escreveram extensões de alta qualidade e as disponibilizaram gratuitamente. Por exemplo, Michael McLennan escreveu incr Tcl, uma extensão que fornece recursos de programação orientados a objetos no Tcl. George Howlett escreveu BLT, que acrescentou vários widgets importantes à Tk. Tom Poindexter escreveu Sybtcl e Oratcl, que forneceram acesso a bancos de dados populares. Brian Smith e Larry Rowe escreveram o TclDP, que forneceu acesso ao soquete e outros recursos de programação distribuídos. Há outras, também, desculpas para os muitos contribuintes dignos que não reconheci. Outras formas de comunidade desenvolvidas neste mesmo período. Inicialmente, criei uma lista de correspondência para comunicação entre os usuários do Tcl, mas, dentro de alguns anos, tornou-se tão grande que não era pesado. Com a ajuda da comunidade Tcl, o grupo de notícias comp. lang. tcl foi criado como um substituto para a lista de discussão desde então, forneceu um fórum maravilhoso para trocar informações e discutir novos recursos da Tcl. Em 1993, Larry Rowe reconheceu a necessidade de pessoas na comunidade se encontrar pessoalmente, então ele organizou o primeiro Tcl Workshop em Berkeley nesse verão. Cerca de 60 pessoas participaram, e a oficina teve tanto sucesso que se tornou um evento anual. Em 1995, a Associação USENIX ofereceu para ajudar a executar a oficina desde então, evoluiu para uma conferência de pleno direito com várias centenas de participantes e um rico programa de artigos, tutoriais e outros eventos. A Conferência Tcl também é um dos principais eventos do mundo para o desgaste do corpo superior: cada ano, há 5-10 projetos de T-shirt diferentes distribuídos para reconhecer várias extensões, eventos, etc. Durante esse período, fiz novos lançamentos do Tcl e Tk Aproximadamente a cada 6-12 meses. A maioria dos novos recursos foram sugeridos por pessoas na comunidade Tcl, em alguns casos, os usuários me forneceram código de protótipo para os novos recursos, que eu então integrou no software principal. Normalmente, cada novo ciclo de lançamento começaria com um período de discussão onde eu propus uma lista de candidatos de novos recursos e todos na comunidade podiam votar para aqueles que achavam que eram mais importantes. Eu tentei dar prioridade aos recursos com a maioria dos votos. Com o tempo, o ciclo de liberação Tcl tendeu a se alinhar com a Conferência Tcl. Uma nova versão normalmente aconteceria em torno da hora da conferência e eu usaria uma sessão da conferência para discutir novos recursos para o próximo lançamento e obter feedback. Muitas vezes eu pedi uma apresentação improvisada para ver como a audiência se sentia por várias questões e, em seguida, tentou fazer uma contagem áspera de quantas mãos foram levantadas (dez, vinte e trinta) parece com cerca de 35 mãos para mim). Estes foram conhecidos como votos de Ouster e sua precisão tem sido frequentemente um tema de discussão. Algumas violações insinuaram que minha contagem de votos é menos do que totalmente objetiva. Em 1994, decidi deixar Berkeley para a indústria. Eu sempre queria passar parte da minha carreira na indústria, e depois de 14 anos na academia o tempo parecia certo. Depois de considerar uma variedade de possibilidades, decidi aceitar uma oferta da Sun Microsystems. Eric Schmidt, Diretor de Tecnologia da Suns, e Bert Sutherland, Diretor de Laboratórios da Sun Microsystems, me ofereceram a chance de construir uma equipe na Sun Labs e desenvolver o Tcl em uma linguagem de script universal para a Internet. Eu sempre senti que Tcl precisaria ter negócios rentáveis ​​construídos em torno dele para sobreviver a longo prazo, e a oferta do Sol foi uma ótima oportunidade para levar o Tcl ao próximo nível. Entrei na Sun em maio de 1994 e comecei a construir uma equipe de desenvolvedores Tcl. Durante os próximos três anos, a equipe da Sun Tcl cresceu para uma dúzia de membros. Até este ponto, quase todas as linhas de código em Tcl e Tk foram escritas pessoalmente, mas ao longo do tempo cada vez mais a responsabilidade pelo código Tcl mudou para outros membros da equipe Sun Tcl. Os recursos adicionais fornecidos pelo Sun nos permitiram fazer grandes melhorias para Tcl e Tk. Scott Stanton e Ray Johnson portaram o Tcl e o Tk para o Windows eo Macintosh, de modo que o Tcl tornou-se um excelente ambiente de desenvolvimento multiplataforma hoje, mais de dois terços dos downloads Tcl são para o Windows. Jacob Levy e Scott Stanton revisaram o sistema IO e adicionaram suporte de soquete, de modo que a Tcl poderia ser facilmente usada para uma variedade de aplicativos de rede. Brian Lewis construiu um compilador bytecode para scripts Tcl, que forneceu speedups de até 10 vezes. Jacob Levy implementou o Safe-Tcl, um poderoso modelo de segurança que permite que os scripts não confiáveis ​​sejam avaliados com segurança. Jacob Levy e Laurent Demailly criaram um plugin Tcl para que os scripts Tcl possam ser avaliados em um navegador da Web e criamos Jacl e TclBlend, que permitem que o Tcl e o Java trabalhem em conjunto. Adicionamos muitas outras melhorias menores, como carregamento dinâmico, namespaces, suporte de data e hora, IO binário, comandos adicionais de manipulação de arquivos e um mecanismo de fonte melhorado. Quando me mudei para o Sol, muitas pessoas estavam preocupadas com o fato de Tcl se tornar uma linguagem proprietária e várias discussões sobre o grupo de discussão comp. lang. tcl. Felizmente, como parte da minha oferta, a Sun concordou que as principais bibliotecas Tcl e Tk continuariam a ser distribuídas gratuitamente em fonte, e a Sun honrou este acordo com fidelidade. À medida que novos lançamentos apareceram com mais e mais melhorias, ficou claro que o suporte da Suns para o Tcl era uma coisa maravilhosa que permitiu que o idioma evoluísse muito mais rapidamente do que poderia ter de outra forma. As preocupações foram gradualmente substituídas por entusiasmo por todas as novas funcionalidades. Durante esses anos, o uso do Tcl continuou a explodir. No final de 1997, havia centenas de milhares de desenvolvedores Tcl, a taxa de downloads da Tcl do site Sun FTP aumentou de 2000 por semana no final de 1995 para mais de 10000 por semana no início de 1998. Era claro para mim que lá Foram grandes oportunidades de negócios em torno do Tcl. Também era claro que a comunidade Tcl tinha muitas necessidades que não seriam atendidas pelo desenvolvimento de código aberto da Tcl. Por exemplo, quase não havia ferramentas de desenvolvimento para o Tcl, e os serviços profissionais, como treinamento e suporte, estavam esporadicamente disponíveis. Muitas extensões importantes, como suporte ao ActiveX e CORBA, ainda precisavam ser escritas. No final de 1997, decidi que a melhor coisa para o Tcl era girar para fora do Sol e formar uma inicialização que poderia se concentrar inteiramente no Tcl. Em janeiro de 1998, criei Scriptics com Sarah Daniels, que se tornou VP de Marketing e Vendas. Dentro de um mês, cerca de metade da equipe do Sun Tcl se juntou a nós e começou o desenvolvimento do TclPro, um conjunto de ferramentas de desenvolvimento que integrariam nosso primeiro produto. O TclPro 1.0 foi enviado em setembro de 1998. Seu sucesso no mercado alimentou um grande impulso de crescimento na empresa. Scriptics também assumiu o controle do Sun no papel do desenvolvimento das instalações principais do Tcl, e continuou liberando-os livremente, assim como o Sun fez. Em 1998, a Scriptics fez vários lançamentos para o Tcl 8.0 para corrigir erros e adicionar novos recursos novos, como um suporte melhor para a extensão incr Tcl. Em abril de 1999, a Scriptics fez sua primeira versão principal de código aberto, o TclTk 8.1. Esta versão adicionou suporte Unicode (para internacionalização), segurança de thread (para aplicativos de servidor multi-threaded) e um pacote de expressão regular totalmente novo por Henry Spencer que inclui muitos novos recursos, além do suporte Unicode. Com a versão 8.1, a Tcl tornou-se a primeira linguagem de script a ter todas as facilidades necessárias para aplicativos empresariais de missão crítica. Na primavera de 1998, aprendi a notícia maravilhosa de que a Tcl ganhara dois grandes prêmios. O primeiro é o ACM Software System Award, premiado anualmente por um sistema de software que teve uma influência duradoura. Os vencedores do prêmio incluem sistemas seminais como os protocolos TCPIP, as primeiras planilhas, os primeiros bancos de dados relacionais, World Wide Web, Unix, PostScript e Smalltalk. O segundo prêmio foi o Prêmio USENIX Software Tools User Group (STUG), dado cada ano em reconhecimento de uma excelente ferramenta de software. Esta seção adicionada por Jeff Hobbs e outros Scriptics foi renomeada Ajuba Solutions em maio de 2000, refletindo o crescente foco da empresa em uma série de tecnologias XML baseadas em Tcl. Ajuba tornou-se em parte a vítima de seu próprio sucesso na criação de software de servidor XML de classe corporativa baseado em Tcl, e foi adquirido pela Interwoven em outubro de 2000. Interwoven não estava interessado em aspectos de código aberto da empresa no entanto, mas o XML e o servidor Tecnologias. Durante o período de julho a outubro de 2000, foram implementados mecanismos para transição da propriedade do desenvolvimento central, que se tornou cada vez mais difundido, longe de uma única organização e para um grupo mais amplo que não está vinculado a nenhuma organização específica. A Tcl Core Team foi formada e estabeleceu seus procedimentos operacionais básicos. Certamente, continuo a beneficiar do envolvimento de muitas empresas. Como um exemplo proeminente, Jeff Hobbs, anteriormente embaixador da Tcl em ScripticsAjuba, mudou-se para o ActiveState (já conhecido pelos produtos Perl e desenvolvimento) para dirigir seu grupo de tecnologias Tcl, trabalhando tanto no núcleo Tcl de código aberto como também avançando muitos As ferramentas de desenvolvimento comercial que foram iniciadas no Scriptics. Type 10 (TK-X) Main Battle Tank (MBT), Japan Type 10 (TK-X) é um tanque de batalha principal de última geração (MBT) avançado fabricado pela Mitsubishi Heavy Industries , Para o Japão Ground Self Defense Force (JGSDF). O MBT pode ser implantado em uma ampla gama de missões, incluindo guerra antitanque, ataques móveis, ataques de força de operações especiais e outras contingências. O Ministério da Defesa do Japão colocou uma encomenda com o contratante principal das Mitsubishi Heavy Industries para até 13 Tipo-10 MBTs em 2010. Os tanques entraram em serviço com o Japão em 2017. Desenvolvimento do Tipo 10 MBT O desenvolvimento do Tipo 10 MBT foi Iniciado pelo Instituto de Pesquisa e Desenvolvimento Técnico (TRDI) em 2002. Um protótipo do tanque foi concluído em 2006. Testes de execução foram realizados até 2007 e 2008, e testes de redes e redes foram realizados posteriormente. O TRDI completou o desenvolvimento em 2009 e começou a produzir os tanques em 2010. A Rotem (parte do grupo Hyundai) desenvolveu a série K1 de veículos, que inclui o tanque de batalha principal K1A1 de 120mm, o tanque de batalha principal K1105 mm, a recuperação blindada K1 ARV Veículo e a ponte de lançamento do veículo blindado K1 AVLB. Design e características do tipo 10 MBT O Tipo 10 MBT é a substituição dos Tipo 74 e Tipo 90 MBTs, que estão em serviço com o JGSDF. Possui melhorias significativas na manobrabilidade, proteção, poder de fogo e desempenho tornando-se um dos 10 principais tanques de batalha do mundo. O tanque acomoda uma equipe de três, incluindo comandante, artilheiro e motorista. Tem um comprimento de 9,4 m, largura de 3,2 m e altura 2,3 m. O peso bruto do tanque é de 44t e o peso de combate de 48t. O MBT pode ser transportado por trens e caminhões. Armamento e proteção do tanque Tipo 10 O Tipo 10 MBT está equipado com uma torre equipada com um sistema de carregamento automático. A torreta pode ser girada através de 360 ​​em percurso para determinar os alvos inimigos. Está armado com uma pistola LPA de 120 mm LBA, que é construída por Japan Steel Works. O armamento secundário do Tipo 10 MBT consiste em uma metralhadora pesada M2HB de 12,7 mm e uma metralhadora coaxial tipo 74 7,62 mm. A torre também está equipada com lançadores de granadas de fumo. O casco dos tanques está equipado com aço nano-cristal, armadura compósita de cerâmica modular de quarta geração para proteção contra rodadas de granadas de roquete (RPG), projéteis HEAT e mísseis antitanque. Os módulos de complemento podem ser facilmente removidos e instalados para alterar os níveis de proteção. Também está equipado com um sistema de proteção nuclear, biológica e química (NBC) e sistemas automáticos de supressão de fogo. Observação e controle de fogo do tanque de batalha principal japonês O tanque do Tipo 10 está equipado com um sistema de controle de incêndio aprimorado para envolver metas estacionárias e móveis. O tanque também possui um detector de alcance a laser. A estação dos comandantes está equipada com uma vista panorâmica, montada à direita da torre. Fornece observação noturna e identificação do alvo. Também está equipado com um sistema de proteção nuclear, biológica e química e sistemas automáticos de supressão de fogo. O MBT está equipado com um sistema de gerenciamento de campo de batalha digital (BMS) que fornece maior conhecimento de situação, exibindo as informações necessárias. O tanque também se orgulha de sistemas de sensores avançados e sofisticados equipamentos C4I (comando, controle, comunicações, computadores e inteligência), que permitem que o tanque se comunique e compartilhe informações com outros tanques na rede GSDF. O sistema C4I de inteligência também permite que o MBT trabalhe em conjunto com as tropas na rede de computadores ao ar livre Infantrys, Regiment Command Control System (ReCS) durante operações de combate integradas. Motor e mobilidade Tipo 10 MBT O tanque Tipo 10 é alimentado por motores diesel de oito cilindros refrigerados a água, combinados com uma caixa de velocidades de transmissão continuamente variável (CVT). O motor gera uma potência de 1.200hp. O tanque está equipado com suspensão ativa hidropneumática e oferece mobilidade superior. Pode atingir uma velocidade de cerca de 70 kmh para frente e para trás. Possui uma faixa operacional de cerca de 440 km.

No comments:

Post a Comment