From 94cc3dbdf08e4aa2ba2fc9a6e2e1f7b0deec9545 Mon Sep 17 00:00:00 2001 From: antrik Date: Mon, 9 Mar 2009 02:03:37 +0100 Subject: Mention cthread vs. pthread problem in language bindings GSoC task --- community/gsoc/project_ideas/language_bindings.mdwn | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'community/gsoc/project_ideas') diff --git a/community/gsoc/project_ideas/language_bindings.mdwn b/community/gsoc/project_ideas/language_bindings.mdwn index 3376754c..51defe54 100644 --- a/community/gsoc/project_ideas/language_bindings.mdwn +++ b/community/gsoc/project_ideas/language_bindings.mdwn @@ -40,6 +40,17 @@ even create native stubs directly from the interface definitions. The [[lisp_bindings_created_by_Flavio_Cruz|flaviocruz]] in last year's GSoC mostly use the latter approach, and can serve as a good example. +There is another possible reason for preferring lower-level bindings: +Presently, the Hurd server libraries use the cthreads threading library, which +predates the pthread standard prevalent today. There is a pthread library for +the Hurd as well, but it's not possible to use both cthreads and pthreads in +the same executable. Thus, until +[[porting_the_Hurd_libraries_to_pthreads|community/gsoc/project_ideas/pthreads]] +is finished, implementing bindings for any language that uses pthreads (in the +runtime environment or the actual programs) is only possible when not using the +standard Hurd server libraries at all -- i.e. when binding at MIG stub level or +interface definition level. + The task is to create easy to use Hurd bindings for a language of the student's choice, and some example servers to prove that it works well in practice. This project will require gaining a very good understanding of the various Hurd -- cgit v1.2.3