I'm happy to announce the first release of the Frink programming language and calculating tool for the Android platform. Frink is a full-fledged programming language (that's also available for your PC/Mac/Linux/Java-enabled platform) that allows you to quickly write high-level programs that will run 100% on your Android device. Now you can solve problems wherever you are!
Frink is also an interactive calculating tool that tracks units of measure through all calculations, ensuring that your answers come out meaningfully, without having to look up physical constants or conversions between units of measure.
For those with a short attention span like me, here are some of the features of Frink.
* Tracks units of measure (feet, meters, tons, dollars, watts, etc.) through all calculations and allows you to add, subtract, multiply, and divide them effortlessly, and makes sure the answer comes out correct, even if you mix units like gallons and liters.
* Arbitrary-precision math, including huge integers and floating-point numbers, rational numbers (that is, fractions like 1/3 are kept without loss of precision,) complex numbers, and intervals.
* Advanced mathematical functions including trigonometric functions (even for complex numbers,) factoring and primality testing, and base conversions.
* Unit Conversion between thousands of unit types with a huge built-in data file.
* Date/time math (add offsets to dates, find out intervals between times,) timezone conversions, and user-modifiable date formats.
* Translates between several human languages, including English, French, German, Spanish, Portuguese, Dutch, Korean, Japanese, Russian, Chinese, Swedish, and Arabic.
* Calculates historical buying power of the U.S. dollar and British pound.
* Calculates exchange rates between most of the world's currencies.
* Powerful Perl-like regular expression capabilities and text processing.
* Supports Unicode throughout, allowing processing of almost all of the world's languages.
* Supports Interval Arithmetic (also known as Interval Computations) in calculations, allowing you to automagically calculate error bounds and uncertainties in all of your calculations.
* Reads HTTP and FTP-based URLs as easily as reading local files, allowing fetching of live web-based data.
* User interface has a Programming Mode which allows you to write, edit, save, and run extremely powerful programs even on a handheld device.
* Frink has a simple but powerful system for drawing graphics which are resizable, support transparency and anti-aliasing, and can be printed or written to image files. Graphics can also have exact lengths, so that a 3-centimeter line is three centimeters long when printed.
* Frink is a full-fledged programming language with arrays, dictionaries, sets, functions, loops, even object-oriented programming and self-evaluation.
* Frink allows Object-Oriented Programming, which allows you to create complex data structures that are still easy to use.
* Java Introspection layer allows you to call any Java code from within Frink.
* Sensors - All of the sensors on the Android can be read, which may include some or all of the following types:
o Magnetic Field
* GPS - Allows fetching of location from the GPS receiver or from the network-based location services. The GPS receiver can be turned on and off programatically. You can access either the last-known position, or turn on the GPS and acquire current, continuously-updated position information.
* Text-to-Speech - Frink can easily speak text aloud on Android using a single speak[string] function.
* Calling Java code - You can call arbitrary Java code supported by the Android API using Frink's Java Introspection capabilities. This allows you to use current and new features available on the Android platform.
For more information, including how to download Frink for Android, see the documentation for Frink on Android at: http://futureboy.us/frinkdocs/android.html
and about Frink, including directions to use it on your personal computer:
Comments and suggestions for improvement are welcome!