View Single Post
  #15   Spotlight this post!  
Unread 05-29-2014, 08:20 AM
taichichuan's Avatar
taichichuan taichichuan is offline
Software Mentor
AKA: Mike Anderson
FRC #0116 (Epsilon Delta)
Team Role: Mentor
 
Join Date: Feb 2010
Rookie Year: 2010
Location: Herndon, VA
Posts: 328
taichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud oftaichichuan has much to be proud of
Send a message via AIM to taichichuan
Re: Sources for new WPILib available yet?

Quote:
Originally Posted by Thad House View Post
Something about the WPILib, is I think most off the communication libraries are not open sourced, but closed libraries that the 3 languages then access. I know those libraries do all the hardware and network communication, and the robot code just reads and writes directly to those. So most code would be fairly portable, and not usually interfacing at the system level.
If this were Windows or OS/X, then you'd be correct. Most of the libraries are closed. But, the WPILib is licensed under the BSD license and is therefore considered open source. Additionally, must of the libraries on Linux (the new roboRIO O/S) are available in source code. And, based on past issues with code like the hacked-up network tables code and the other communications code where they had problems (e.g., needing to take off the Nagle algorithm to get the C++ code to not overwhelm the FMS) communications libraries are precisely the places where WPI needs the most help.

It certainly is possible to have one set of binary libraries and then provide binding to different languages. This means that a bug in the library will cause all languages to fail equally ;-) . Brad Miller and his folks work diligently on the WPILib. But, putting extra sets of eyes on it only help to make it more robust and safer. The students in the beta tests will be trying to implement a robot as *users* of the code. But, those of us with significant development experience in the multi-core ARM Linux environment can help make sure that more of the inevitable multi-core Heisenbugs are terminated before the start of the 2015 season.