The Frink Language

Frink is a calculating tool and programming language designed to help you in the real world. It tracks units of measurement throughout all calculations and ensures that answers are correct. It converts between systems of measurement, and has a huge library of physical data. It is both a simple calculator for quick calculations and a full-fledged programming language for large tasks. It draws high-quality graphics, handles conversions between time zones, currencies, and historical values of the U.S. dollar and the British pound, translates between several languages, does date/time math, and more.

Tags education Internet Scientific/Engineering Astronomy Software Development Interpreters Text Processing Mathematics General
Licenses Freeware Other
Operating Systems OS Independent SymbianOS
Implementation Java

Tweet this project Short link

Rss Recent releases

  • Rrelease-mid
  •  18 Apr 2009 22:37
  • Rrelease-after

    Changes: This release fixes some "Class not found" exceptions that may have occurred when calling some functions, notably graphics.write[] and TAIMinusUTC[]. In addition, a problem was corrected involving fonts which had dimensions of length, for example, g.font["SansSerif", 1 inch]. The sun.frink astronomical library has also been enhanced to allow drawing of the moon's crescent at any given time.

    • Rrelease-mid
    •  09 Apr 2009 10:17
    • Rrelease-after

      Changes: This release adds the ability to load bitmap images (e.g. JPEG, GIF, PNG) from files or URLs and draw them onscreen, scale them, add them to graphics, draw on images, add watermarks to images, save the results to a file, and more. In addition, functions to control the drawing of graphics to a file have been added.

      • Rrelease-mid
      •  30 Mar 2009 01:26
      • Rrelease-after

        Changes: This release improves the graphics library by adding several new curve types including ellipses and circular arcs. This enables drawing perfect circles or ellipses with transparent "holes" in them, which was previously impossible. In addition, when printing graphics, the background color is now rendered.

        Changes: The graphics library now has the ability to draw and fill complex shapes using a combination of lines and cubic and quadratic Bezier curves. This also allows proper rendering of objects with "holes" in them.

        • Rrelease-mid
        •  04 Mar 2009 22:24
        • Rrelease-after

        Changes: This release fixes overflow problems in certain cases of the exponentiation operator where the exponent is an exact rational number. In addition, some unnecessary messages were suppressed when calling the graphics.show[] method at the end of a program.

        Rss Recent comments

        Rcomment-before 11 Mar 2007 10:16 Rcomment-trans Ice07 Rcomment-after

        Good
        Thanks, I like it very much.

        Rcomment-before 14 Dec 2005 02:25 Rcomment-trans eliasen Rcomment-after

        Re: version info
        Oops, something weird happened with the Command-Line Options link above.

        Rcomment-before 14 Dec 2005 02:21 Rcomment-trans eliasen Rcomment-after

        Re: version info

        > There doesn't seem to be any way to find

        > out what version of

        > frink a particular copy is, e.g. a -v

        > command line option.

        > Is there? If not, how come?

        >

        Because ye 'ave never asked, Bill, me laddie! I've had some version code floating around, but I never checked it in. You'll note that the current version of Frink (2005-12-14) does have a -v or --version command-line switch to display the version number and exit. Please see the Command-Line Options section of the documentation. Hope this helps! I may add a feature to access this programmatically later.

        Rcomment-before 14 Dec 2005 00:19 Rcomment-trans billposer Rcomment-after

        version info
        There doesn't seem to be any way to find out what version of

        frink a particular copy is, e.g. a -v command line option.

        Is there? If not, how come?

        Rcomment-before 18 Mar 2004 08:11 Rcomment-trans eliasen Rcomment-after

        Re: Frink missing Saybolt seconds?
        Thanks for the references on the viscosity measurements! I looked a bit further and, as you mentioned, these numbers seem to be empirically measured at only a couple of very specific temperatures, so a conversion to a single viscosity value may be pretty questionable. I'll do some further research to see if this can be turned into a more continuous function for a reasonable temperature range.

        There are lots of similar physical-chemical measurements that I'd like to put into Frink, but to do it right, there are usually many parameters that need to be specified. For example, if you want to know the density of carbon, you'd also need to specify at what temperature and pressure, and what phase (e.g. graphite or diamond or buckyballs?) It's all feasible, but the number of parameters that one needs to specify (or implicitly accept defaults for) may be large.

        Thanks for the suggestions! If you can suggest an interpolating function, let me know!

        Da4e681c09d8481b6d8c01e21a70e323_thumb

        Project Spotlight

        Lilina

        A simple but powerful RSS and Atom news aggregator.

        No-screenshot

        Project Spotlight

        Meep FDTD

        Finite-difference time-domain electromagnetism simulation.