# Implementing a Concurrent Hello World in Common Lisp

DevFeed: [Implementing a Concurrent Hello World in Common Lisp](<https://devfeed.tech/articles/concurrent-hello-34480.md>)

Original publisher: [Read original article](<https://tapoueh.org/blog/2012/11/concurrent-hello/>)

Author: Dimitri Fontaine PostgreSQL Major Contributor; Author

Published: 2012-11-04T22:04:00Z

Content type: tutorial

Language: en

Sources: [Dimitri Fontaine](<https://devfeed.tech/sources/dimitri-fontaine.md>)

Topics: [Common Lisp](<https://devfeed.tech/topics/common-lisp.md>), [Concurrency](<https://devfeed.tech/topics/concurrency.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Go Language](<https://devfeed.tech/topics/go-language.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [code](<https://devfeed.tech/tags/code.md>), [concurrent](<https://devfeed.tech/tags/concurrent.md>), [lisp](<https://devfeed.tech/tags/lisp.md>), [programming](<https://devfeed.tech/tags/programming.md>)

## AI overview

The article implements a concurrent "Hello World" program in Common Lisp using lparallel. It explains how worker synchronization produces the expected output and discusses a fix for REPL output interleaving caused by the main function returning too early.

## Source excerpt

Thanks to Mickael on twitter I ran into that article about implementing a very basic Hello World! program as a way to get into a new concurrent language or facility. The original article, titled Concurrent Hello World in Go, Erlang and C++ is all about getting to know The Go Programming Language better. To quote the article: The first thing I always do when playing around with a new software platform is to write a concurrent "Hello World" program. The program works as follows: One active entity (e.g. thread, Erlang process, Goroutine) has to print "Hello " and another one "World!\n" with the two active entities synchronizing with each other so that the output always is "Hello World!\n".