diff options
Diffstat (limited to 'community/gsoc/project_ideas')
-rw-r--r-- | community/gsoc/project_ideas/language_bindings.mdwn | 11 |
1 files changed, 11 insertions, 0 deletions
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 |