Quine implementado em Golang

Como criar um programa que imprime a si mesmo em Go.

Imprimindo seu proprio fonte

Quine é um programa que consegue imprimir seu código fonte na saída padrão. O nome é em homenagem ao matemático e filosofo Willard Van Orman Quine.

Existem exemplos de Quine escritos para várias linguagens de programação, é um exercício interessante tentar escrever a sua versão e um belo desafio.

Implementação em Golang

package main

func main() {
	aspa := string(96)
	print(codigo, aspa, codigo, aspa)
}

const codigo = `package main
func main() {
	aspa := string(96)
	print(codigo, aspa, codigo, aspa)
}
const codigo = `

Codigo fonte do exemplo: exemplo no Golang Playground exemplo no grupo de estudos

Apesar da capacidade de criar uma copia de si mesmo soar como uma forma de criar um vírus de computador esse não é o caso aqui, geralmente um disco de computador simplesmente lê uma copia de si mesmo copiando da memória ou de outro arquivo, não precisa ter a dificuldade extra de implementar um Quine. Apesar que eu tenho certeza que é um desafio interessante para linguagens de script e tenho certeza que alguém deve ter usado essa ideia para fazer um vírus nem que seja apenas pelo desafio.

Cesar Gimenes


Compartilhe esse post:

 
comments powered by Disqus