Paul Krill
Editor at Large

Cross-platform F# developers get a dose of Ionide

news
Mar 9, 20162 mins

Packaged as an Atom Editor, the new Ionide IDE enables F# developers to code across platforms with Microsoft's popular functional language

Ionide, a development tool for the Microsoft-designed F# functional-first language, will be integrated with the Forge command-line tool and will get deeper linkage to Fslab libraries for data science.

Providing F# developers with a modern IDE, open source Ionide boasts capabilities like autocomplete, document formatting, and syntax and error highlighting. It’s packaged as an Atom Editor and Visual Studio Code-compatible suite of plug-ins for cross-platform development.

Speaking about the project during the recent fsharpConf 2016, Ionide lead developer Krysztof Cieślak mapped out where the tooling is headed. Integration with Forge, another of Cieślak’s projects, would provide tooling for project manipulation and scaffolding, he said. “Forge is a command-line tool that provides tasks for creating F# projects with no dependence on other languages,” the Forge GitHub page states. “When called without any arguments, Forge automatically goes into an interactive mode.”

FsLab, meanwhile, features a rapid development environment for advanced analysis, powered by F#. Developers can access data using type providers and explore data using a data-frame and time-series library. Integration with the R language offers visualization and reporting. Plans call for including charts from Fslab in the F# interactive panel, as well as including test runners, Cieślak said.

Right now, users can plug in testing using the build automation system Fake, which has a domain-specific language for build tasks, he said, but this isn’t as nice as having a UI for this capability, as in Visual Studio. He hopes the capability will be added “maybe one day.”

The project was released with support for Atom about a year ago, with a Visual Studio Code plug-in offered about four months ago. Ionide also features F# Interactive, a capability for running F# scripts easily for quick feedback and iteration. The F# Yeoman generator, offered as an Npm, supports scaffolding for new projects, but it’s supported only in Atom. Ionide also features integration with Paket, a dependency manager for .Net and Mono projects, and with the Fake .Net build tool.

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author