C%2b%2b To Java Converter For Mac



Chalmers University of Technology and University of Gothenburg

Compile ISO C, Khronos SYCL., and DPC source code. Reuse code across hardware targets, including CPUs, GPUs, and FPGAs. Avoid proprietary lock-in with a cross-industry, open, standards-based unified programming model. The Java properties indicate the location of the jar file, the name of the Main class, and the version of the JRE to be used. The other properties include a pointer to the icon file and to the Java application stub file that is the native executable. Creating Mac OS X Java Applications on Other Platforms. Running the command: $ gcc -S geeks.c This will cause gcc to run the compiler, generating an assembly file geeks.s, and go no further.(Normally it would then invoke the assembler to generate an object- code file.). This page shows you, step by step, how to convert a simple Java application to a version you can distribute on a Mac. To follow along, download the ButtonDemo (.zip) example from the Java Tutorial. This example was created using NetBeans which uses the Ant utility. You can run all necessary tools and make all necessary edits from the command.

What is the BNF Converter?

The BNF Converter is a compiler construction tool generating a compiler front-end from a Labelled BNF grammar. It is currently generating code for the target languages Haskell, Agda, C, C++, C#, Java, and OCaml, as well as XML representations and Pygment syntax highlighters.

Given a Labelled BNF grammar the tool produces:

  • an abstract syntax implementation in the target language,
  • a case skeleton for the abstract syntax in the target language,
  • a pretty-printer in the target language,
  • an Alex, JLex, or Flexlexer generator file ,
  • a Happy, CUP, or Bisonparser generator file, and
  • a LaTeX file containing a readable specification of the language.

Download

Install by Cabal from Hackage:

Current development version (source repository on GitHub)

News

Find the latest releases at https://github.com/BNFC/bnfc/releases.

BNFC release 2.8.42020-10-10

BNFC release 2.8.32019-08-27

BNFC release 2.8.22018-11-04

BNFC release 2.8.12016-10-04

BNFC release 2.82015-05-24

BNFC release 2.7.12014-10-09

BNFC release 2.7.0.12014-09-26

BNFC release 2.7.0.02014-09-26

BNFC release 2.5.02013-03-18

Implementing Programming Languages, a compiler book using BNFC2012-07-13

Resources

Documentation

  • User Manual on Read the Docs (HTML)
  • Tutorial (a bit dated) (Files)
  • LBNF Reference Manual (also as PDF from 2005)

Mailing list

Send questions, bug reports, usage news, etc, to our Google group.

Book

Implementing Programming Languages, a compiler book using BNFC.

A small example

Content of file Calc.cf:
-- Calc.cf: A grammar for arithmetical expressions
EAdd.Exp::=Exp'+'Exp1;
ESub.Exp::=Exp'-'Exp1;
EMul.Exp1::=Exp1'*'Exp2;
EDiv.Exp1::=Exp1'/'Exp2;
EInt.Exp2::=Integer;
coercionsExp2;
Run the test parser, generated e.g. with `--haskell`:

Large examples

A grammar of C with an example C file.

A grammar of Alfa with an example Alfa file. (For more details, see the Alfa home page.)

A grammar of LBNF. It is at the same time an example LBNF file. The development version of this grammar is used in the implementation of the BNF Converter.

A grammar of Java 1.1 developed by Mike Rainey.

Authors

© Andreas Abel, Jonas Almström Duregård, Krasimir Angelov,Jean-Philippe Bernardy, Björn Bringert, Johan Broberg, Kyle Butt,Paul Callaghan,Grégoire Détrez,Markus Forsberg, Ola Frid,Peter Gammie,Thomas Hallgren, Pascal Hof, Simon Huber,Patrik Jansson, Kristofer Johannisson,Antti-Juhani Kaijanaho,Andreas Lööw,Justin Meiners, Kent Mein,Ulf Norell,Gabriele Paganelli, Michael Pellauer,Fabian Ruch, andAarne Ranta 2002 - 2020.

License

Free software under theBSD 3-clauselicense.

Versions until 2.8.4 released under theGNU General Public License(GPL).


This DrJava-based Java programming environment is no longer being supported(because DrJava in no longer being actively developed and DrJava is incompatible with Java 11).It has been replaced by the following IntelliJ-based programming environment forMac OS X.

This document instructs you on how to set up our Java programming environment for your Mac OS X computer. It also provides a step-by-step guide for creating, compiling, and executing a Java program using either DrJava or the Terminal.All of the software used is freely available.

You will need an Intel-based Mac runningMac OS X 10.8 (Mountain Lion) to Mac OS X 10.13 (High Sierra).

You can defer steps 4–6 until Section 1.5 of the textbook.


C 2b 2b To Java Converter For Mac 64-bit

0. Install the Programming Environment


Our installer downloads, installs, and configures the Java programming environment you will be using, including DrJava, and the standard libraries from our textbook.

  • Log in to the user account in which you will be programming.Your account must have Administrator privileges (with a non-blank password)and you must be connected to the Internet.
  • Install Oracle's implementation of the Java Platform, Standard Edition Development Kit (JDK 8).Do not install either JDK 9 or JDK 10, as they are currently incompatible with DrJava.
    • Browse toJava SE Development Kit 8u171.In the first table, check Accept License Agreementand the click jdk-8u171-macosx-x64.dmg,which corresponds to the entry for Mac OS X.The exact verison 8u171 is not essential.
    • Double click the downloaded file jdk-8u171-macosx-x64.dmg to begin the installation.Enter your OS X password when prompted.We recommend all of the default options.
    • Delete jdk-8u171-macosx-x64.dmg.
  • To install,
    • Download introcs.zip to the Desktop;double-click it to unzip (if necessary). This creates introcs.app. Security and Privacy -> General -> Allow applications downloaded from: Anywhere.

      To enable this option, you may need to click the lock in the lower left-hand corner(and type your password when prompted).-->

    • Double-click introcs.app to perform the installation.If you receive a warning that introcs.app is an applicationdownloaded from the Internet, click Open.
    • Enter your OS X password when prompted.
  • If the installation succeeds, you will see the following:
    • A Terminal window containing approximately thisexecution log.
    • A Standard Drawing window containing a red bullseye and a textbook graphic.
  • Delete introcs.zip and introcs.app.

1. Create the Program in DrJava


Now you are ready to write your first Java program.You will develop your Java programs in an application called DrJava.DrJava features many specialized programming tools including syntax highlighting,bracket matching, auto indenting, and line numbering.

  • The installer creates a shortcut to DrJava on the desktop.Double-click it to launch DrJava.If you receive a warning about incoming network connections,click Allow.
  • In the main DrJava window, type the Java programHelloWorld.java exactly as it appears below. If you omit even a semicolon, the program won't work. As you type, DrJava does the indenting for you.
  • Finally, click the Save button to save the file, using the name HelloWorld.java.The filename is case sensitive and must exactly match the name of theclass in the Java program.

2. Compile the Program in DrJava


It is now time to convert your Java program into a form more amenable for execution on a computer. To do this, click the Compile button.If all goes well, you should see the following message in the Compiler Outputpane at the bottom:

If DrJava complains in some way, you mistyped something.Check your program carefully, using the error messages in the Compiler Output paneas a guide.


3. Execute the Program in DrJava


Now it is time to run your program. This is the fun part.

  • Type the following in the Interactions pane at the bottom.By convention, we highlight the text you type in boldface. If all goes well, you should see the following message:
  • You may need to repeat this edit–compile–execute cycle a few times before it works. Ask for help if you can't see the mistake.
Congratulations, you are now a Java programmer!
4. Command-Line Interface with the Terminal


The command-line provides capabilities beyond those available in DrJava,including redirection and piping.You will type commands in an application called the Terminal.

C%2b%2b To Java Converter For Mac
  • The installer creates a shortcut on the desktop to the Terminal.Double-click it to launch the Terminal.You should see something like:The ~ is shorthand for your home directory /Users/<username>.
  • To confirm that the Java compiler is installed,type the command in boldface below and check that the results match:It's important that you see the number 1.8for the Java version number, but the rest is not critical.
  • To confirm that you the Java interpreter is installed, typethe command in boldface below and check that the results match:Again, it's important that you see the number 1.8for the Java version number, but the rest is not critical.

5. Compile the Program from the Terminal


You will use the javac command to convert your Java program into a form more amenable for execution on a computer.

  • From the Terminal, navigate to the directory containing HelloWorld.java,say ~/Desktop/hello,by typing the cd (change directory) commands below:The ~ is shorthand for /Users/<username>.
  • Compile it by typing the javac command below:Assuming the file HelloWorld.java is in the current working directory,you should see no error messages.
  • To make our textbook standard libraries accessible to Java,use the command javac-introcs instead.For example,BouncingBall.javais a program that uses our standard drawing library.After downloading the file to the current directory,you can compile it with the following command:

6. Execute the Program from the Terminal


You will use the java command to execute your program.

  • From the Terminal, type the java command below.You should see the output of the program.
  • To make our textbook standard libraries accessible to Java,use the command java-introcs instead. For example, to executeBouncingBall.java(assuming you downloaded and compiled it in the previous step), type the following command:

Troubleshooting


How long should the installer take?Once downloaded, the Oracle Java installer should take about 10 seconds and the introcs.app installer should take about 20 seconds. If you have virus detection software running (such as McAfee Endpoint), each could take 5–10 minutes (or more).

The installer didn't work on my machine. What should I do?Check out the following three Q+As. If these don't resolve the issue,please contact a staff member to identify what went wrong.

When I run the installer, the terminal window just waits after asking for a password.But, I don't even have a password-enabled account.You must have a non-blank password. Here are instructions forresetting a user's password.

When I run the installer, I get the error message'bash: /Volumes/Macintosh: No such file or directory'.Your user account and OS must be on the same volume.

When I run the installer, I get an error like bash: /private/var/folders/70/n8stth1d1x33hrw8n07kf1280000gn/T/AppTranslocation/45FC25B7-17E3-46DF-AC27-9A7EF56DDFD3/d/algs4.app/Contents/Resources/launcher.sh: No such file or directory.What should I do? This is likely due to OS X Sierra path randomization.Use the Finder to move introcs.app to some other folder and try again.

What does the installer do?In short, it downloads, installs, and configures Checkstyle, Findbugs, and DrJava, and the textbook standard libraries.Here is a more detailed list:

  1. Checks that Java is installed.
  2. Downloads the textbook standard libraries fromstdlib.jar.
  3. Downloads the Java wrapper scriptsjavac-introcs andjava-introcs.
  4. Downloads and installsFindbugs 3.0.1from findbugs.zip.Downloads our findbugs configuration file findbugs.xml and wrapper script findbugs-introcs.
  5. Downloads and installsPMD 5.8.1from pmd.zip.Downloads our PMD configuration file pmd.xmland wrapper script pmd-introcs.
  6. Downloads and installsCheckstyle 8.2from checkstyle.zip.Downloads our checkstyle configuration file checkstyle-introcs.xml and wrapper script checkstyle-introcs.
  7. Downloads and installs the latest stable version ofDrJava,from DrJava.zip.Creates a shortcut to DrJava on the Desktop.Downloads and installs the DrJava configuration file fromdrjava-config.txtto /Users/<username>/.drjava.Note that this will overwrite any existing .drjava configuration file.
  8. Tests that the installation succeeded by compiling and executing TestIntroCS.java.

Why does the installer need my password?The installer copies files into /usr/local/bin and/usr/local/introcs,which require superuser privileges.

How do I completely uninstall introcs.app?

  • Delete the directory /usr/local/introcs.
  • To uninstall DrJava, delete the following two files:
    • /Applications/DrJava.app.
    • /Users/<username>/.drjava.
  • To uninstall the Java, Checkstyle, and Findbugs wrapper scripts,delete the following files:
    • /usr/local/bin/javac-introcs
    • /usr/local/bin/java-introcs
    • /usr/local/bin/findbugs-introcs
    • /usr/local/bin/pmd-introcs
    • /usr/local/bin/checkstyle-introcs
  • Delete the shortcut to DrJava and Terminal on the Desktop.

What happens if I re-run the installer?It will re-download, install, and configure Checkstyle, Findbugs, DrJava, and our textbook libraries.

Can I use a different version of Java?Any version of Java 8 (either Oracle or OpenJDK) should work fine.Note that DrJava does not currently work with Java 9.

I have both Java 8 and Java 9 installed, but the default version is Java 9. How doI change the default version back to Java 8?To disable Java 9, type the following commands in the Terminal:

You should still be able to use Java 9 by specifying the full path tojavac and java, e.g.,/Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home/bin/javac.

Why I try to run DrJava, I get the following error message. How should I proceed?

Are you sure that you are using the version of DrJava that was installedby our auto-installer (and not downloaded from the DrJava website)?We suggest deleting any older versions of DrJava and using the one that the auto-installer copied to the /Applications directory.

Can I use a different IDE? Yes you can use another IDE (such as Eclipse) butyou will have to configure the IDE properties yourself (such as the classpath). Reset Interactions.From the Terminal, type Ctrl-c.

When using standard input, how do I signify that there is no more data?If you are typing input in the Terminal or DrJava, type Ctrl-d on its own line.

I successfully compiled HelloWorld.java with javac, but, when I execute,I get the error message'Exception in thread 'main' java.lang.NoClassDefFoundError: HelloWorld'.What am I doing wrong?First, verify that the file HelloWorld.class is in the current directory.Be sure to type java HelloWorld without a trailing .classor .java.-->

When I compile or execute a program in Terminal that uses thetextbook standard library, I get an error that it cannot find the library. How can I fix this?Use the wrapper scripts javac-introcs and java-introcs,which add stdlib.jar to the Java classpath.

C 2b 2b To Java Converter For Mac Download

Which shell should I use in the Terminal?Bash is the default shell in Mac OS X, but feel free to usewhichever one you prefer.

Where can I learn more about the command line?Here is a short tutorial on thecommand line.

C 2b 2b To Java Converter For Macs

Last modified on August 14, 2019.
Copyright © 2000–2019Robert SedgewickandKevin Wayne.All rights reserved.