Go to Post In other words, don't worry about the results but strive for excellence in the way you live your life and everything you do. - Paul Copioli [more]
Home
Go Back   Chief Delphi > Technical > Programming
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rating: Thread Rating: 5 votes, 5.00 average. Display Modes
  #1   Spotlight this post!  
Unread 23-02-2015, 21:34
joshmill229 joshmill229 is offline
Registered User
FRC #0229
 
Join Date: Jan 2015
Location: Massena, NY
Posts: 4
joshmill229 is an unknown quantity at this point
Roborio and Swift?

Me and and another programmer on our team were wondering if anyone new if the roborio could run swift? If possible we would like to write our own libraries to use next season
  #2   Spotlight this post!  
Unread 23-02-2015, 21:37
Alan Anderson's Avatar
Alan Anderson Alan Anderson is offline
Software Architect
FRC #0045 (TechnoKats)
Team Role: Mentor
 
Join Date: Feb 2004
Rookie Year: 2004
Location: Kokomo, Indiana
Posts: 9,113
Alan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond reputeAlan Anderson has a reputation beyond repute
Re: Roborio and Swift?

So far as I know, Swift targets only Apple iOS and Mac OS X. Neither of those run on the roboRIO.
  #3   Spotlight this post!  
Unread 23-02-2015, 21:41
Arhowk's Avatar
Arhowk Arhowk is offline
FiM CSA
AKA: Jake Niman
FRC #1684 (The Chimeras) (5460 Mentor)
 
Join Date: Jan 2013
Rookie Year: 2013
Location: Lapeer
Posts: 543
Arhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to behold
Re: Roborio and Swift?

Quote:
Swift is an innovative new programming language for Cocoa and Cocoa Touch.
Cocoa and cocoa touch are much different than linux.

Why swift specifically? programming languages are one in the same, the only difference between them is almost always syntactical sugar (nothing too special with swift), speed (probably wouldn't be different from Java), and personal experience.
  #4   Spotlight this post!  
Unread 23-02-2015, 22:04
Fauge7 Fauge7 is offline
Head programmer
FRC #3019 (firebird robotics)
Team Role: Programmer
 
Join Date: Jan 2013
Rookie Year: 2012
Location: Scottsdale
Posts: 195
Fauge7 is a name known to allFauge7 is a name known to allFauge7 is a name known to allFauge7 is a name known to allFauge7 is a name known to allFauge7 is a name known to all
Re: Roborio and Swift?

the only other language that i can actually see being programmed besides the one avalible is the .net languages mostly vb and c#
  #5   Spotlight this post!  
Unread 24-02-2015, 12:01
virtuald's Avatar
virtuald virtuald is offline
RobotPy Guy
AKA: Dustin Spicuzza
FRC #1418 (), FRC #1973, FRC #4796, FRC #6367 ()
Team Role: Mentor
 
Join Date: Dec 2008
Rookie Year: 2003
Location: Boston, MA
Posts: 1,086
virtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant future
Re: Roborio and Swift?

Quote:
Originally Posted by Fauge7 View Post
the only other language that i can actually see being programmed besides the one avalible is the .net languages mostly vb and c#
Not true. Any language that can run on linux, could potentially be run on the RoboRIO. The "hard" part (really, it's typically just a lot of tedious work, as opposed to being truly hard) is creating appropriate bindings for WPILib/HAL.

Possibilities include (but are not limited to) Python (done), Ruby, Perl, Go, Javascript, Haskell, Lisp, C#/Mono, D, Brainf*k, LOLCode... whatever someone is willing to put the work into, is possible.

I'd be interested in seeing someone create WPILib bindings for Go or Javascript.
__________________
Maintainer of RobotPy - Python for FRC
Creator of pyfrc (Robot Simulator + utilities for Python) and pynetworktables/pynetworktables2js (NetworkTables for Python & Javascript)

2017 Season: Teams #1973, #4796, #6369
Team #1418 (remote mentor): Newton Quarterfinalists, 2016 Chesapeake District Champion, 2x Innovation in Control award, 2x district event winner
Team #1418: 2015 DC Regional Innovation In Control Award, #2 seed; 2014 VA Industrial Design Award; 2014 Finalists in DC & VA
Team #2423: 2012 & 2013 Boston Regional Innovation in Control Award


Resources: FIRSTWiki (relaunched!) | My Software Stuff
  #6   Spotlight this post!  
Unread 24-02-2015, 13:36
Bryan Herbst's Avatar
Bryan Herbst Bryan Herbst is offline
Registered User
AKA: Bryan
FRC #2052 (KnightKrawler)
Team Role: Mentor
 
Join Date: Sep 2007
Rookie Year: 2007
Location: Minneapolis, Minnesota
Posts: 545
Bryan Herbst has a reputation beyond reputeBryan Herbst has a reputation beyond reputeBryan Herbst has a reputation beyond reputeBryan Herbst has a reputation beyond reputeBryan Herbst has a reputation beyond reputeBryan Herbst has a reputation beyond reputeBryan Herbst has a reputation beyond reputeBryan Herbst has a reputation beyond reputeBryan Herbst has a reputation beyond reputeBryan Herbst has a reputation beyond reputeBryan Herbst has a reputation beyond repute
Re: Roborio and Swift?

Quote:
Originally Posted by virtuald View Post
Not true. Any language that can run on linux, could potentially be run on the RoboRIO. The "hard" part (really, it's typically just a lot of tedious work, as opposed to being truly hard) is creating appropriate bindings for WPILib/HAL.

Possibilities include (but are not limited to) Python (done), Ruby, Perl, Go, Javascript, Haskell, Lisp, C#/Mono, D, Brainf*k, LOLCode... whatever someone is willing to put the work into, is possible.

I'd be interested in seeing someone create WPILib bindings for Go or Javascript.
I don't think the comment was about which languages are possible, but rather which languages are probable.

While all the languages you listed can run on the roboRIO, there isn't a great reason to bring most of them to FRC.

I could see arguments in favor of Python and C#, not so much the others. However, because they need to maintain a balance between offering a variety of languages and providing first class support for the available languages, I'm not holding my breath for more officially supported languages.
__________________
Team 2052- KnightKrawler
Mentor and volunteer
  #7   Spotlight this post!  
Unread 24-02-2015, 13:39
virtuald's Avatar
virtuald virtuald is offline
RobotPy Guy
AKA: Dustin Spicuzza
FRC #1418 (), FRC #1973, FRC #4796, FRC #6367 ()
Team Role: Mentor
 
Join Date: Dec 2008
Rookie Year: 2003
Location: Boston, MA
Posts: 1,086
virtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant future
Re: Roborio and Swift?

Quote:
Originally Posted by Tanis View Post
I don't think the comment was about which languages are possible, but rather which languages are probable.

While all the languages you listed can run on the roboRIO, there isn't a great reason to bring most of them to FRC.

I could see arguments in favor of Python and C#, not so much the others. However, because they need to maintain a balance between offering a variety of languages and providing first class support for the available languages, I'm not holding my breath for more officially supported languages.
My expectation is that for the forseeable future, FRC will only officially support Java, C++, and LabVIEW.
__________________
Maintainer of RobotPy - Python for FRC
Creator of pyfrc (Robot Simulator + utilities for Python) and pynetworktables/pynetworktables2js (NetworkTables for Python & Javascript)

2017 Season: Teams #1973, #4796, #6369
Team #1418 (remote mentor): Newton Quarterfinalists, 2016 Chesapeake District Champion, 2x Innovation in Control award, 2x district event winner
Team #1418: 2015 DC Regional Innovation In Control Award, #2 seed; 2014 VA Industrial Design Award; 2014 Finalists in DC & VA
Team #2423: 2012 & 2013 Boston Regional Innovation in Control Award


Resources: FIRSTWiki (relaunched!) | My Software Stuff
  #8   Spotlight this post!  
Unread 24-02-2015, 13:47
Thad House Thad House is offline
Volunteer, WPILib Contributor
no team (Waiting for 2021)
Team Role: Mentor
 
Join Date: Feb 2011
Rookie Year: 2010
Location: Thousand Oaks, California
Posts: 1,106
Thad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond repute
Re: Roborio and Swift?

Quote:
Originally Posted by Tanis View Post
I don't think the comment was about which languages are possible, but rather which languages are probable.

While all the languages you listed can run on the roboRIO, there isn't a great reason to bring most of them to FRC.

I could see arguments in favor of Python and C#, not so much the others. However, because they need to maintain a balance between offering a variety of languages and providing first class support for the available languages, I'm not holding my breath for more officially supported languages.
I started working on C# earlier this season. I could access parts of the HAL and DS reporting was working, so it could switch between auto, teleop and disabled, but whenever I tried to open any input or output I would get a segfault. I have a feeling this was because it was using an old version of Mono, which wasnt working correctly with IntPtrs. I think I'm going to need to compile the newest version of Mono to get it working, but I really dont know how to do that, so that will be something to figure out over the summer.

This was good news for most languages though, because if you can interop with C++ libraries, getting basic communication working was really easy, and was done in about a day.
__________________
All statements made are my own and not the feelings of any of my affiliated teams.
Teams 1510 and 2898 - Student 2010-2012
Team 4488 - Mentor 2013-2016
Co-developer of RobotDotNet, a .NET port of the WPILib.

Last edited by Thad House : 24-02-2015 at 13:50.
  #9   Spotlight this post!  
Unread 24-02-2015, 14:27
Arhowk's Avatar
Arhowk Arhowk is offline
FiM CSA
AKA: Jake Niman
FRC #1684 (The Chimeras) (5460 Mentor)
 
Join Date: Jan 2013
Rookie Year: 2013
Location: Lapeer
Posts: 543
Arhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to behold
Re: Roborio and Swift?

Quote:
Originally Posted by virtuald View Post
Not true. Any language that can run on linux, could potentially be run on the RoboRIO. The "hard" part (really, it's typically just a lot of tedious work, as opposed to being truly hard) is creating appropriate bindings for WPILib/HAL.

Possibilities include (but are not limited to) Python (done), Ruby, Perl, Go, Javascript, Haskell, Lisp, C#/Mono, D, Brainf*k, LOLCode... whatever someone is willing to put the work into, is possible.

I'd be interested in seeing someone create WPILib bindings for Go or Javascript.
No idea what "Go" is but 1684 will be doing JavaScript next year (if I'm still on the team) (or a custom language still being developed if time allows). The only reason that we didn't do it this year was that plans for a backup roboRIO fell through.

// just looked up "Go"
Code:
no type inheritance
no method or operator overloading
no circular dependencies among packages
no pointer arithmetic
no assertions
no generic programming
eh.
  #10   Spotlight this post!  
Unread 25-02-2015, 14:29
byteit101's Avatar
byteit101 byteit101 is offline
WPILib maintainer (WPI)
AKA: Patrick Plenefisch
no team (The Cat Attack (Formerly))
Team Role: Programmer
 
Join Date: Jan 2009
Rookie Year: 2009
Location: Worcester
Posts: 699
byteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of light
Re: Roborio and Swift?

Quote:
Originally Posted by virtuald View Post
Not true. Any language that can run on linux, could potentially be run on the RoboRIO. The "hard" part (really, it's typically just a lot of tedious work, as opposed to being truly hard) is creating appropriate bindings for WPILib/HAL.

Possibilities include (but are not limited to) Python (done), Ruby, Perl, Go, Javascript, Haskell, Lisp, C#/Mono, D, Brainf*k, LOLCode... whatever someone is willing to put the work into, is possible.

I'd be interested in seeing someone create WPILib bindings for Go or Javascript.
Go is actually used for some of our tests here at WPI. Rather easy to compile for arm. Javascript and Ruby (and Python) in theory should be able to work *RIGHT NOW* via the JVM with Nashorn or Rhino, JRuby, and Jython respectively. Hmm... now I have to go try this out...

EDIT: It would require a bit more work than running the jars. Most of them seem to require classes that aren't in the profile on the RoboRIO
__________________
Bubble Wrap: programmers rewards
Watchdog.Kill();
printf("Watchdog is Dead, Celebrate!");
How to make a self aware robot: while (∞) cout<<(sqrt(-∞)/-0);
Previously FRC 451 (The Cat Attack)
Now part of the class of 2016 at WPI & helping on WPILib

Last edited by byteit101 : 25-02-2015 at 14:34.
  #11   Spotlight this post!  
Unread 25-02-2015, 17:28
Aero Aero is offline
consumes pizza, produces code
AKA: Ari Lotter
FRC #0865 (Warp7)
Team Role: Programmer
 
Join Date: May 2013
Rookie Year: 2013
Location: Toronto
Posts: 30
Aero is on a distinguished road
Re: Roborio and Swift?

Quote:
Originally Posted by Arhowk View Post
No idea what "Go" is but 1684 will be doing JavaScript next year (if I'm still on the team) (or a custom language still being developed if time allows). The only reason that we didn't do it this year was that plans for a backup roboRIO fell through.

// just looked up "Go"
Code:
no type inheritance
no method or operator overloading
no circular dependencies among packages
no pointer arithmetic
no assertions
no generic programming
eh.
// just looked up "Javascript"
Code:
no type inheritance
no method or operator overloading
no circular dependencies among packages
no pointer arithmetic
no assertions
no generic programming
eh.
  #12   Spotlight this post!  
Unread 25-02-2015, 17:51
virtuald's Avatar
virtuald virtuald is offline
RobotPy Guy
AKA: Dustin Spicuzza
FRC #1418 (), FRC #1973, FRC #4796, FRC #6367 ()
Team Role: Mentor
 
Join Date: Dec 2008
Rookie Year: 2003
Location: Boston, MA
Posts: 1,086
virtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant futurevirtuald has a brilliant future
Re: Roborio and Swift?

Go actually has *better* generic programming, sorta. It would be cool to use in FIRST.
__________________
Maintainer of RobotPy - Python for FRC
Creator of pyfrc (Robot Simulator + utilities for Python) and pynetworktables/pynetworktables2js (NetworkTables for Python & Javascript)

2017 Season: Teams #1973, #4796, #6369
Team #1418 (remote mentor): Newton Quarterfinalists, 2016 Chesapeake District Champion, 2x Innovation in Control award, 2x district event winner
Team #1418: 2015 DC Regional Innovation In Control Award, #2 seed; 2014 VA Industrial Design Award; 2014 Finalists in DC & VA
Team #2423: 2012 & 2013 Boston Regional Innovation in Control Award


Resources: FIRSTWiki (relaunched!) | My Software Stuff
  #13   Spotlight this post!  
Unread 26-02-2015, 12:32
Fauge7 Fauge7 is offline
Head programmer
FRC #3019 (firebird robotics)
Team Role: Programmer
 
Join Date: Jan 2013
Rookie Year: 2012
Location: Scottsdale
Posts: 195
Fauge7 is a name known to allFauge7 is a name known to allFauge7 is a name known to allFauge7 is a name known to allFauge7 is a name known to allFauge7 is a name known to all
Re: Roborio and Swift?

I just dont get why you would do mono/c#, java has the same syntax as the library is more mature
  #14   Spotlight this post!  
Unread 26-02-2015, 18:45
Arhowk's Avatar
Arhowk Arhowk is offline
FiM CSA
AKA: Jake Niman
FRC #1684 (The Chimeras) (5460 Mentor)
 
Join Date: Jan 2013
Rookie Year: 2013
Location: Lapeer
Posts: 543
Arhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to behold
Re: Roborio and Swift?

Quote:
Originally Posted by Aero View Post
// just looked up "Javascript"
Code:
no type inheritance
no method or operator overloading
no circular dependencies among packages
no pointer arithmetic
no assertions
no generic programming
eh.
Javascript indeed has type inheritance, assertions (console.assert(expression, object)), generic programming, and some operator overloading through "valueOf" hacks.

Javascript does not need method inheritance due to it's loose type definition, is built to avoid circular dependencies, and has no concept of pointers so pointer arithmetic is pointless.

Please attempt to be less aggressive next time.

Quote:
Go actually has *better* generic programming, sorta. It would be cool to use in FIRST.
Meh. It has something. Whether or not it can be considered conventional "generic" programming is debatable.

Quote:
I just dont get why you would do mono/c#, java has the same syntax as the library is more mature
It's just preference. Plus, alot of the Java library is inaccessible on the roboRIO since it's primarily graphical. (though the same and more can be said for C#)
  #15   Spotlight this post!  
Unread 08-07-2015, 11:19
teku14's Avatar
teku14 teku14 is offline
http:
FRC #2614 (MARS)
Team Role: Programmer
 
Join Date: Apr 2014
Rookie Year: 2013
Location: Morgantown, WV
Posts: 64
teku14 is a jewel in the roughteku14 is a jewel in the roughteku14 is a jewel in the roughteku14 is a jewel in the rough
Re: Roborio and Swift?

I'm going to rekindle this discussion.

Swift is now Open Source and will be available on Linux later this year

https://developer.apple.com/swift/blog/?id=29
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 21:17.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi