diff --git a/repos/mml/src/app/target.mk b/repos/mml/src/app/thread_test/target.mk
similarity index 60%
rename from repos/mml/src/app/target.mk
rename to repos/mml/src/app/thread_test/target.mk
index 578ce53722..dba730806e 100644
--- a/repos/mml/src/app/target.mk
+++ b/repos/mml/src/app/thread_test/target.mk
@@ -1,3 +1,3 @@
TARGET = thread_test
-SRC_CC = std_thread_test.cc
+SRC_CC = thread_test.cc
LIBS += base libc stdcxx
\ No newline at end of file
diff --git a/repos/mml/src/app/thread_test/thread_test.cc b/repos/mml/src/app/thread_test/thread_test.cc
new file mode 100644
index 0000000000..c5ed442b6c
--- /dev/null
+++ b/repos/mml/src/app/thread_test/thread_test.cc
@@ -0,0 +1,28 @@
+#include
+#include
+#include
+#include
+
+namespace ThreadTest {
+ struct Main;
+}
+
+struct ThreadTest::Main
+{
+ Genode::Env &_env;
+
+ void execute()
+ {
+ while(true) {
+ std::cout << "Hello world" << std::endl;
+ std::this_thread::sleep_for(std::chrone::seconds(1));
+ }
+ }
+};
+
+void Component::construct(Genode::Env &env)
+{
+ static ThreadTest::Main main(env);
+ std::thread([main]
+ { main->execute(); });
+}
\ No newline at end of file