Uma vez por telefone da Zoom de nossa equipe, o fio da discussão foi além do planejado. Isso geralmente acontece em um local remoto, porque todos não têm a comunicação usual de "cozinha" no escritório. A conversa começou com um livro italiano, onde “Eu te amo” está escrito em todas as línguas do mundo. Depois, surgiram objeções de que as linguagens de programação também são linguagens, por que não existem ??? Então, lembramos que o Dia dos Namorados estava chegando. Então, descobrimos como fazer um remake deste livro à nossa maneira e, ao mesmo tempo, lembrar a última classificação das linguagens de programação do IEEE.
Lançamos o livro em uma pequena edição, e neste post publicamos seu conteúdo: declarações de amor em 53 das linguagens de programação mais populares. E, como bônus, oferecemos uma breve descrição de cada um deles.
Contente
- Pitão
- Java
- C
- C ++
- JavaScript
- R
- Arduino
- Vai
- Rápido
- MATLAB
- Rubi
- Dardo
- SQL
- PHP
- conjunto
- Scala
- Html
- Kotlin
- Julia
- Ferrugem
- Casca
- Em processamento
- C #
- SAS
- Fortran
- CUDA
- Visual Basic
- Objective-C
- Delphi
- Perl
- Verilog
- VHDL
- Elixir
- F#
- Prolog
- Lua
- Lisp
- Ada
- Apache Groovy
- Scheme
- Haskell
- COBOL
- Clojure
- ABAP
- D
- Forth
- OCaml
- Tcl
- Erlang
- Eiffel
- CoffeeScript
- J
- Racket
1. Python . Uma linguagem orientada a objetos e interpretada que depende muito de um grande número de bibliotecas, incluindo módulos populares para aprendizado de máquina e computação científica.
print('I love you!')
2. Java . Uma linguagem orientada a objetos que gera código para ser executado em uma máquina virtual. Isso permite que ele seja executado em diferentes plataformas com pequenas alterações. Java é uma escolha popular para desenvolvedores de aplicativos da web.
public class ILoveYou
{
public static void main(String[] args)
{
System.out.println("I love you!");
}
}
3. C . Usado para escrever programas onde a velocidade e a flexibilidade são importantes. Por exemplo, em sistemas embarcados ou computação de alto desempenho.
#include <stdio.h>
int main(void)
{
printf("I love you!\n");
return 0;
}
4. C ++ . Versão orientada a objetos de C, que acabou sendo uma continuação lógica para software conduzido por interfaces gráficas de usuário.
#include <iostream>
int main()
{
std::cout << "I love you!" << std::endl;
return 0;
}
5. JavaScript . Uma linguagem de script usada principalmente para adicionar funcionalidade aos navegadores da web dinamicamente, permite criar páginas da web complexas.
document.write("I love you!");
6. R . Uma linguagem de programação e ambiente projetado para aplicativos de análise estatística e mineração de dados.
print("I love you!")
7. Arduino . Com base na linguagem Wiring e no ambiente de desenvolvimento de Processing, a linguagem nativa do microcontrolador Arduino se tornou a base para um grande número de dispositivos DIY e protótipos.
void setup() {
Serial.begin(9600);
Serial.println("I love you!");
}
void loop() {
}
8. Vá . Criado pelo Google, Go possui suporte integrado para programas que precisam se comunicar durante a execução em diferentes kernels ou computadores.
package main;
import "fmt"
func main()
{
fmt.Println("I love you!")
}
9. Swift . Linguagem da Apple para desenvolver software iOS e macOS. Compatível com código C, C ++ e Objective-C.
print('I love you!')
10. MATLAB . Uma linguagem de script para o ambiente de computação MATLAB da MathWorks. Projetado para tarefas de computação numérica, como engenharia ou modelagem científica.
disp('I love you!')
11. Ruby . Uma linguagem de script projetada para fornecer mais suporte para objetos do que outras linguagens semelhantes.
puts "I love you!"
12. Dardo . Desenvolvido pelo Google, o Dart pode ser compilado para arquiteturas ARM e x86 para dispositivos móveis ou transferido para JavaScript para aplicativos baseados em navegador. A estrutura Flutter baseada em Dart foi projetada para criar livros personalizados para iOS e Android.
void main() {
print('I love you!');
}
13. SQL . Uma linguagem especializada para consultar e manipular bancos de dados. Existem extensões para escrever programas gerais que permitem, por exemplo, executar a lógica de negócios junto com um banco de dados.
CREATE TABLE iloveyou (phrase TEXT);
INSERT INTO iloveyou VALUES ("I love you!");
SELECT COUNT(*) FROM iloveyou;
14. PHP . Uma linguagem de script projetada principalmente para oferecer suporte a sites dinâmicos.
<?php
echo "I love you!";
?>
15. Montagem . Um termo genérico para a vasta família de conjuntos de instruções do processador. Escrever código assembly requer conhecimento significativo, mas permite criar software de alta velocidade que pode ser executado diretamente no hardware.
global _main extern _printf section .text _main: push message call _printf add esp, 4 ret message: db 'I love you!', 10, 0
16. Scala . Os programas escritos em Scala podem ser executados na mesma máquina virtual que os programas Java.
object Love {
def main(args: Array[String]) = {
println("I love you!")
}
}
17. HTML . Uma linguagem especializada para descrever a aparência e o comportamento de páginas da web, geralmente extensível com CSS.
<!DOCTYPE html>
<html>
<head>
<title>Love</title>
</head>
<body>
<p>I love you!</p>
</body>
</html>
18. Kotlin . Como uma extensão Java, o código Kotlin pode ser executado em uma máquina virtual Java ou ser compilado para JavaScript ou um aplicativo Android nativo.
fun main(args: Array<String>) {
println("I love you!")
}
19. Julia . A linguagem foi projetada para computação estatística e científica e é compatível com bibliotecas antigas escritas em Fortran e C.
println("I love you!")
20. Ferrugem . Uma linguagem projetada para facilitar a programação robusta de sistemas paralelos.
fn main() {
println!("I love you!");
}
21. Shell . Um termo geral para um conjunto de estruturas que permitem scripts para a linha de comando do sistema operacional.
#!/bin/sh
echo I love you!
22. Processamento . Essa linguagem foi criada no Instituto de Tecnologia de Massachusetts para facilitar a criação de visualizações por artistas, designers e amadores. Uma biblioteca JavaScript intimamente relacionada chamada p5.js permite que você crie aplicativos baseados em navegador.
PFont font;
void setup() {
size(200,200);
font = loadFont("CharterBT-Roman-48.vlw");
}
void draw() {
background(255);
textFont(font,20);
fill(0);
text("I love you!",10,100);
}
23. C # . Uma linguagem orientada a objetos criada pela Microsoft para o desenvolvimento de software para a plataforma .NET. Suporta muitos aplicativos do Windows e Azure.
using System;
class ILoveYou
{
static void Main()
{
Console.Write("I love you!");
}
}
24. SAS . A linguagem da análise de dados e da análise estatística.
data foo ; bar="I love" ; put bar= "you!"; run ;
25. Fortran . Criado na década de 1950, o Fortran foi projetado para computação científica e de engenharia de alto desempenho.
program iloveyou
print *, "I love you!"
end program
26. CUDA . Uma plataforma e um kit de ferramentas do fabricante de chips gráficos NVIDIA que permite aos programadores aproveitar o poder das GPUs para computação de uso geral.
__global__ void cuda_love(){
printf("I love you!\n");
}
int main() {
cuda_love<<<1,1>>>();
return 0;
}
27. Visual Basic . A Microsoft criou o Visual Basic para o rápido desenvolvimento de aplicativos do Windows, mas não o oferece mais. Um descendente do Visual Basic .NET, que ainda é compatível, funciona com o framework .NET mais moderno.
Imports System
Module Love
Sub Main()
Console.WriteLine("I love you!")
Console.ReadLine()
End Sub
End Module
28. Objective-C . Era a linguagem favorita da Apple para escrever aplicativos para OS X e iOS antes do Swift.
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSLog(@"I love you!");
}
return 0;
}
29. Delphi . Um derivado Pascal usado para aplicativos do Windows. Propriedade da Embarcadero Delphi. Existem implementações de código aberto para Open Pascal para outras plataformas.
program ILoveYou;
{$APPTYPE CONSOLE}
begin
WriteLn('I love you!');
end.
30. Perl . Antigamente, uma única linguagem era frequentemente usada como cola em sistemas complexos. Perl agora pertence a duas linguagens estreitamente relacionadas, mas diferentes: Perl 5 e a Perl 6 atualizada.
print('I love you!')
31. Verilog . Uma linguagem de descrição de hardware (definida pelo padrão IEEE 1364) que é usada para criar e analisar circuitos eletrônicos. Forma a base para o SystemVerilog posterior e estendido (IEEE 1800).
module love_you ;
initial begin
$display ("I love you!");
#10 $finish;
end
endmodule
32. VHDL . Uma linguagem de descrição de equipamento usada na criação e análise de circuitos eletrônicos.
entity T01_ILoveYou is
end entity;
architecture sim of ILoveYou is
begin
process is
begin
report "I love you!";
wait;
end process;
end architecture;
33. Elixir . Uma extensão da linguagem de programação Erlang, Elixir é projetado para software de grande escala, como sites de alto tráfego ou processamento de grandes quantidades de dados.
Erlang/OTP 21.0 [64-bit] [smp:2:2] [...]
Interactive Elixir (1.11.3) - press Ctrl+C to exit
iex(1)> "I " <> "love " <> "you!"
"I love you!"
34. F # . Desenvolvido pela Microsoft, o F # visa o ambiente de programação .NET mais comumente encontrado no Windows. É principalmente construído em funções, mas também suporta programação orientada a objetos.
[<EntryPoint>]
let main argv =
printfn "I love you!"
0
35. Prolog . Originalmente da comunidade de IA, esta linguagem é usada principalmente como uma ferramenta de ensino e pesquisa.
$ swipl
<...banner...>
?- write('I love you!'), nl.
36. Lua . Essa linguagem de script é freqüentemente usada para tornar outros aplicativos programáveis, especialmente nas áreas de animação e jogos.
print("I love you!")
37. Lisp . Criado na década de 1950, o Lisp se tornou amplamente usado por pesquisadores de inteligência artificial, mas diminuiu sua popularidade nos últimos anos. No entanto, os sabores Lisp como Clojure e Scheme (listados separadamente) possuem comunidades ativas.
CL-USER> (defun love ()
(format t "I love you!~%"))
LOVE
CL-USER> (love)
I love you!
NIL
CL-USER>
38. Ada . Desenvolvida originalmente para o Departamento de Defesa dos Estados Unidos, a linguagem é usada para aplicações onde a confiabilidade é crítica, como sistemas de controle aeroespacial.
with Ada.Text_IO;
procedure sayLove is
begin
Ada.Text_IO.put("I love you!"); -- Output some text!
end sayLove;
39. Apache Groovy . Uma linguagem de programação orientada a objetos que é executada na plataforma Java. Uma estrutura bem conhecida para a criação de aplicativos da web, Grails, é escrita em Groovy.
public class Love {
public static void main(String args[]) {
System.out.println("I love you!");
}
}
40. Esquema . Originalmente concebido como uma linguagem para fins educacionais, Scheme agora é uma família de variações Lisp que são usadas em aplicativos como o App Inventor para Android. Isso permite que você desenvolva rapidamente serviços móveis.
(begin
(display "I love you!")
(newline))
41. Haskell . A linguagem, construída com base nos princípios da programação funcional pura, é projetada para aplicações onde a confiabilidade é importante.
main :: IO ()
main = putStrLn "I love you!"
42. COBOL . O software COBOL, desenvolvido no final dos anos 1950 para aplicativos comerciais e financeiros, ainda gerencia sistemas de missão crítica em muitas organizações de grande porte.
PROCEDURE DIVISION.
DISPLAY 'I love you!'.
STOP RUN.
43. Clojure . Um dialeto Lisp compatível com a mesma máquina virtual que suporta programas Java.
(ns helloworld.core)
(defn -main
"I can say 'I love you!'."
[]
(println "I love you!"))
44. ABAP . ABAP (Advanced Business Application Programming) é uma linguagem de programação para serviços de negócios criada pela SAP.
REPORT ILOVEYOU.
WRITE 'I love you!'.
45. D . Construído como o sucessor do C ++, D tem um montador embutido para usar hardware específico de arquitetura.
import std.stdio;
void main()
{
writeln("I love you!");
}
46. Adiante . Desenvolvida originalmente para controlar radiotelescópios, esta linguagem de programação ainda é usada hoje em dia para aplicações como bootloaders e firmware.
: LOVE ( -- ) CR ." I love you!" ;
47. OCaml . Uma linguagem orientada a objetos com ênfase na confiabilidade do software.
print_string "I love you!\n";;
48. Tcl . Uma linguagem interpretada projetada para prototipagem rápida e suporte para a interface gráfica do usuário Tk usada principalmente por sistemas Unix.
#! /usr/local/bin/wish8.5
button .love -text "I love you!" -command { exit }
pack .love
49. Erlang . O lançamento de Erlang como uma linguagem de código aberto criada pela Ericsson para aplicativos de telefonia incorporados em 1998 aumentou sua popularidade entre os programadores que desenvolvem serviços que devem processar muitas tarefas simultaneamente.
-module(love).
-export([love_you/0]).
love_you() -> io:fwrite("I love you!\n").
50. Eiffel . Uma linguagem orientada a objetos que influenciou várias outras linguagens comuns. Um princípio importante é que o máximo possível do trabalho de otimização do código deve ser deixado para o compilador, enquanto o programador se concentrará na lógica fundamental e na legibilidade do código.
on_paint (paint_dc: WEL_PAINT_DC; invalid_rect: WEL_RECT)
do
paint_dc.draw_centered_text("I love you!", client_rect)
end
51. CoffeeScript . Projetado para tornar mais fácil escrever código JavaScript implementando convenções de sintaxe de outras linguagens.
console.log("I love you!")
52. J . Usado principalmente para análises e programação matemática, o código escrito em J é frequentemente muito conciso.
#!/bin/jc
echo 'I love you!'
exit ''
53. Racket . Uma variação do Lisp, esta linguagem torna mais fácil criar suas próprias linguagens de domínio específico.
> "I love you!"