Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Apr 30 07:52
    msgilligan commented #103
  • Apr 30 07:52
    msgilligan commented #103
  • Apr 30 07:37
    msgilligan commented #99
  • Apr 22 14:46
    norraxx edited #107
  • Apr 22 14:45
    norraxx opened #107
  • Oct 04 2018 13:01
    GiulianoFranchetto opened #106
  • Aug 10 2018 09:18
    psteinb commented #105
  • Aug 10 2018 08:56
    psteinb closed #105
  • Aug 10 2018 08:56
    psteinb commented #105
  • Aug 10 2018 08:46
    adibrov commented #105
  • Aug 09 2018 17:36
    royerloic commented #105
  • Aug 09 2018 15:35
    psteinb opened #105
  • Jun 19 2018 09:14
    lanwen closed #96
  • May 23 2018 07:23
    mauricio-dug opened #104
  • Mar 16 2018 13:31
    Vampire commented #103
  • Mar 16 2018 12:37
    Vampire commented #103
  • Mar 16 2018 11:46
    Vampire edited #103
  • Mar 16 2018 11:45
    Vampire opened #103
  • Mar 16 2018 10:02
    trauchhaupt commented #99
  • Mar 16 2018 10:01
    trauchhaupt edited #99
Christian Trimble
@ctrimble
You created an org. Sweet!
Olivier Chafik
@ochafik
Yeah, my github stone age is over (soon)
Christian Trimble
@ctrimble
Any thoughts on getting Travis CI set up?
I have a library building on there that uses JavaCL and it is able to support the features I am using.
Well, good luck with getting things moved around. I will make sure to open tickets if I see anything else broken.
Olivier Chafik
@ochafik
Hehe, Travis CI sounds like a good idea (trying to pull all their levers until it works :-)
Thanks for triggering all this move (hehe, with the Google Code thingie, was the right time to scatter these projects anyway), looking forward to getting lots of PRs and issues from you :-)
Christian Trimble
@ctrimble
You may want to have a look at https://github.com/ctrimble/graphene/tree/develop/graphene/src/main/java/com/xiantrimble/graphene/source . There is an include preprocessor in there that supports templating engines.
Christian Trimble
@ctrimble
@ochafik I saw that you were adjusting your test suite to deal with issues on your performance based tests. You could isolate those by changing their name and placing them in a profile with a unique Surefire configuration. Getting those to stay useful and run on travis will be problematic.
JUnit categories may also be an option, but I haven't tried using those recently.
Olivier Chafik
@ochafik
@ctrimble A preprocessor, cool! (note: in JNAerator, I've been using anarres-jcpp, it's pretty complete). Have you seen / used https://code.google.com/p/javacl/wiki/IncludesInKernels#Includes_in_JavaCL ?
@ctrimble Not happy with turning any perf test off, but definitely deserves more love / thought. Maybe an option could be to spin part of the tests / profiles you suggested in a separate travis env (using their matrix feature), but I'd favour tracking the expectations / refining the test (retries). More to come :-)
Christian Trimble
@ctrimble
@ochafik I have been using the include functionality in JavaCL, but I ran into the limitations of the C preprocessor. In particular, I needed include guards driven by variables, which you cannot do with macros.
Christian Trimble
@ctrimble
@ochafik Do you have an eclipse formatter configuration file for the nativelibs4java projects? I have been trying to get some PRs together for BridJ and it would be nice to have the code under a programmatically determined format. If one does not exist, I can get one together that approximates your code style.
Olivier Chafik
@ochafik
@ctrimble I've unfortunately stayed away from formatters because of all these Velocity templates, but it would be really great if you gave it a go. Ideally a combo of maven plugin + eclipse config? (I only use NetBeans for these projects, much snappier and Maven-friendlier than Eclipse)
(@ctrimble + I'm a terribly bad Java coder, so feel free to take liberties with my "style". I'm way more opinionated about Scala style ;-))
(@ctrimble to be more precise, I was an appallingly bad Java coder when I started JNAerator, and I've been trying to match my own style ever since :-D This has to stop somewhere)
Christian Trimble
@ctrimble
@ochafik OK. I will add a formatting lifecycle to the project, so you can format with 'mvn format' and include a reasonable formatter configuration.
Olivier Chafik
@ochafik
Cool, thank you!
Christian Trimble
@ctrimble
@ochafik I submitted 2 PRs yesterday. One resolves some warnings and the other adds support for formatting the java code. I am hoping to get the code base healthy enough to improve the way that generic types are resolved.
I am not sure what your feelings are on breaking changes, but the generic parameters to some of the types in BridJ could be improved. I tried to stay away from any changes like that, because I do not understand the impact to libraries down stream, like JNAerator.
Christian Trimble
@ctrimble
I have a change locally that delegates generic type resolution to classmate, the library that does generic type resolution in Jackson. https://github.com/cowtowncoder/java-classmate
Olivier Chafik
@ochafik
@ctrimble Amazing, thanks a lot for the PRs! (reviewing / testing now)
I'll have a look at classmate, but I'm wary of adding dependencies, do you have examples of use-cases that it would improve?
Christian Trimble
@ctrimble
I am trying to get generics working with structs and type resolution was a todo in your code. Upon looking around, there were quite a few todos in type detection. This is reasonable, since it is a hard problem. I could shade in the dependency, but it seems best to delegate complete type resolution, since it is a hard problem and is not really the focus of this code.
Christian Trimble
@ctrimble
Concrete example from what I am working on. I am trying to write some generic graph algorithms and I want vertex and edge types with generic data. Something like:
Vertex<V, T extends Vertex<V, T>> extends StructObject /* recursive type here would rock */ {
// getters/setters for concrete things like id.
public V value() { /* impl */ }
public T value( V value ) { /* impl */ }
}
I can only get something like this to work right now if the generic field getter and setter are abstract.
Christian Trimble
@ctrimble
@ochafik On the topic of formatting, it looks like the indent in your scala code is 2 spaces. Would you consider that indent setting for the java code?
Olivier Chafik
@ochafik
@ctrimble re/ indentation, SGTM, would definitely simplify my IDE setups :-) (gradually converging to some established style guide would also make sense, for instance https://google-styleguide.googlecode.com/svn/trunk/javaguide.html)
Olivier Chafik
@ochafik
@ctrimble I might be a bit out of my league for the generic resolution, indeed, and java-classmate seems relatively slim (64k with no deps, http://search.maven.org/#artifactdetails%7Ccom.fasterxml%7Cclassmate%7C1.1.0%7Cbundle ), so definitely an option. I'm not sure about the legal aspects of shading Apache-licensed stuff into BSD-licensed projects, will have to propagate to JavaCL / JNAerator (or it might just be a good time to drop shaded artifacts, probably advantageously replaceable by release bundles if needed). Could you open an issue to track this with your example?
Christian Trimble
@ctrimble
@ochafik I will open an issue tonight. Thanks again for taking the time to review the PRs and merge them into the project.
Phr00t
@phr00t
hey guys, I'm phr00t that is behind OpenVR development & integration for jMonkeyEngine
hopefully someone still checks in here, but i'm having trouble with BridJ & OpenVR
@ochafik & @ctrimble i left a comment on what i think is the issue here: https://github.com/nativelibs4java/BridJ/issues/46#issuecomment-109412768
Christian Trimble
@ctrimble
Hello @phr00t. Not sure if I am the best one to help with this issue.
Phr00t
@phr00t
Wasn't sure who to ping, but thank you for the response. If you have any suggestions or ideas, or can grab someone who could help, that'd be really appreciated
Brandon Bloom
@brandonbloom
while installing, i got this:

Failed tests:
ComparisonTest.compareFieldsAccess:670->assertBridJFaster:675 BridJ is not as fast as expected (1.0239646223916958x faster, expected > 1.1x faster)

Tests run: 455, Failures: 1, Errors: 0, Skipped: 7

supasheva
@supasheva
Hello
Wow
So this group is dead
Krishna Pagadala
@prakis
Hello
Christian Trimble
@ctrimble
Hi
Gregory Hlavac
@GregoryHlavac
And there's my question answred; dead room it is.. :|
jensli
@jensli

I'm trying to use BridJ in a way that I'm not sure whether it is supported:

I have a 64 bit application. I get a byte array containing the memory of a 32 bit application through a debugger interface.

I'd like to use BridJ to parse the content of this byte array as C datatypes. I do this by using Pointer.pointerToBytes().as(my_struct.class).get(). This technique works in a 32 bit application. But in a 64 bit application it does not, because BridJ uses the word size of the host application (64 bit) and I want to use the word size of the byte array (32 bit).

Can that be done? Is it possible to somehow switch the word size of BridJ manually, so that BridJ uses 32 bit words, even if it is run in a 64 bit application?