git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Core and Not-So Core

From
Jon Seymour <jon.seymour@gmail.com>
Date
May 11, 2005, 02:09 UTC
Message-ID
<2cfc4032050510190950bba995@mail.gmail.com>
In-Reply-To
<Pine.LNX.4.61.0505102158140.17216@chimarrao.boston.redhat.com>
On 5/11/05, Rik van Riel <riel@redhat.com> wrote:
Show 14 quoted lines
> On Wed, 11 May 2005, Jon Seymour wrote:
> 
> > I did consider wrapping it - I really did. But after thinking about it
> > for a couple of weeks I eventually came to the conclusion it would be a
> > sub-optimal solution.
> 
> > So, if I want a stable foundation to build my stuff on, basing it on
> > the output of the C tools would be a huge mistake.
> 
> Can Java use a library that's implemented in C, like Python
> and Perl can?  If that is the case, the C implementation of
> git simply needs the ability to be called as a library and
> you can implement Java bindings for it.
> 
It can in principle, yes. This is the so-called Java-Native-Interface (JNI).

I think in the longer term it would make sense to write a JNI layer but the GIT source code is probably a little too unstable for that now. What needs to happen first, I think, is that a solid and stable C API (e.g. a libgit) be proposed and developed.

One outcome of the work I am doing (a long time away, probably will never happen) might eventually be to propose an C API for GIT based, in part, on the prototyping work I do in Java. However, I suspect its Java-tainted heritage would mean instant death to it for purely dogmatic reasons so I think it I'll leave it to others to propose a C-API and then write a JNI wrapper for that when/if it ever happens.

> That should also make it easier to create front-ends in
> other languages...
> 
Agreed.
jon.
Previous: Rik van RielNext: Petr Baudis
Message 32 of 40 in “Core and Not-So Core”
  1. Jon SeymourMay 10, 2005
  2. David WoodhouseMay 10, 2005
  3. Eduardo Teixeira DiasMay 10, 2005
  4. David WoodhouseMay 10, 2005
  5. Eduardo Teixeira DiasMay 10, 2005
  6. Diego CallejaMay 10, 2005
  7. Eduardo Teixeira DiasMay 10, 2005
  8. Diego CallejaMay 10, 2005
  9. Eduardo Teixeira DiasMay 10, 2005
  10. Eduardo Teixeira DiasMay 10, 2005
  11. Petr BaudisMay 10, 2005
  12. Andreas GalMay 10, 2005
  13. James PurserMay 10, 2005
  14. Christoph HellwigMay 11, 2005
  15. Jon SeymourMay 11, 2005
  16. Jon SeymourMay 10, 2005
  17. David WoodhouseMay 10, 2005
  18. Daniel BarkalowMay 10, 2005
  19. Petr BaudisMay 10, 2005
  20. Jon SeymourMay 11, 2005
  21. Peter WilliamsMay 11, 2005
  22. Nicolas PitreMay 11, 2005
  23. Jon SeymourMay 11, 2005
  24. Noel GrandinMay 11, 2005
  25. Jon SeymourMay 11, 2005
  26. Juliusz ChroboczekMay 18, 2005
  27. Jon SeymourMay 10, 2005
  28. David WoodhouseMay 10, 2005
  29. Jon SeymourMay 10, 2005
  30. Christoph HellwigMay 10, 2005
  31. Rik van RielMay 11, 2005
  32. Jon SeymourMay 11, 2005
  33. Petr BaudisMay 11, 2005
  34. Jon SeymourMay 10, 2005
  35. Davide LibenziMay 10, 2005
  36. Jon SeymourMay 10, 2005
  37. Petr BaudisMay 10, 2005
  38. Jon SeymourMay 10, 2005
  39. Daniel BarkalowMay 11, 2005
  40. Jon SeymourMay 11, 2005

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.