Development Environments

Termux is often used for software development, information science education and experimentation. Here are some articles and links with information on how to make it possible with one of the following programming environments.
== APKs ==
APKs (Android application PacKage) can be built in Termux on device with openjdk-17 and gradle.
Related Pull Request and Temporary Guide: https://github.com/termux/termux-packages/pull/7227#issuecomment-893022283 
== C/C++ ==
Package: clang
Description: C language frontend for LLVM
Homepage: http://clang.llvm.org/
Related Issues: https://github.com/termux/termux-packages/issues?q=clang
== Common Lisp ==
Package: ecl
Description: ECL (Embeddable Common Lisp) interpreter
Homepage: https://common-lisp.net/project/ecl/
== D ==
Package: ldc
Description: D programming language compiler, built with LLVM
Homepage: https://dlang.org/
Instructions: https://wiki.dlang.org/Build_D_for_Android
== Dart ==
Package: dart
Homepage: https://www.dartlang.org/
== Elixir ==
Package: elixir
Description: Programming language compatible with the Erlang platform
Homepage: https://elixir-lang.org/
== Erlang ==
Package: erlang
Description: Erlang programming language and runtime environment
Homepage: https://www.erlang.org/
== Forth ==
Package: pforth
Description: Portable Forth in C
Homepage: http://www.softsynth.com/pforth/
== Go ==
Package: golang
Description: Go programming language compiler
Homepage: https://golang.org/
Instructions: https://gobyexample.com/hello-world
== Groovy ==
Package: groovy
Description: A multi-faceted language for the Java platform
Homepage: https://groovy-lang.org/
== Haskell ==
Package: ghc
Description: Glasgow Haskell Compiler.
ghc is currently disabled due to build issues. Looking for patches that will fix package.
Homepage: https://www.haskell.org/ghc/
Related Issues: https://github.com/termux/termux-packages/issues?q=haskell
== Java ==
=== ECJ ===
Package: ecj
Description: Eclipse Compiler for Java
Homepage: http://www.eclipse.org/jdt/core/
Related Issues: https://github.com/termux/termux-packages/issues?q=ecj
=== OpenJDK ===
Package: openjdk-17
Description: Java development kit and runtime
Related Issues: https://github.com/termux/termux-packages/issues?q=openjdk, https://github.com/termux/termux-packages/issues?q=java
== JavaScript ==
See packages: quickjs, duktape, nodejs, nodejs-lts
=== NodeJS ===
Main Article: Node.js
Homepage: https://nodejs.org/
== Kotlin ==
Package: kotlin
Homepage: https://kotlinlang.org/
== Lua ==
Package: lua52
Package: lua53
Package: lua54
Description: Lightweight embeddable scripting language
Homepage: https://www.lua.org/
== Nim ==
Package: nim
Description: Nim programming language compiler
Homepage: https://nim-lang.org/
== OCaml ==
* Compiling and setting up OCaml (a copy of the article http://ygrek.org.ua/p/ocaml-termux.html)
https://ocaml.org/learn/description.html
Related Issues: https://github.com/termux/termux-packages/issues?q=ocaml
== Octave ==
Octave is available from a community repository. Setup up its-pointless' repository.
https://github.com/termux/termux-packages/issues?q=octave
== Perl ==
Package: perl
Homepage: https://www.perl.org/
== PHP ==
Package: php
Description: Server-side scripting language
Homepage: https://php.net
Related Issues: https://github.com/termux/termux-packages/issues?q=php
== Picolisp ==
* The original article: https://picolisp.com/wiki/?TermuxPentiPicoLisp
Related Issues: https://github.com/termux/termux-packages/issues?q=picolisp
== Prolog ==
Package: swi-prolog
Description: Popular prolog implementation
Homepage: https://swi-prolog.org/
== Python ==
Package: python
Description: Python 3 interpreter
Package: python2
Description: Python 2 interpreter
Homepage: http://python.org/
Related Issues: https://github.com/termux/termux-packages/issues?q=python
== Racket ==
Package: racket
Homepage: https://racket-lang.org
== Ruby ==
Package: ruby
Homepage: https://www.ruby-lang.org/
Related Issues: https://github.com/termux/termux-packages/issues?q=ruby
== Rust ==
Package: rust
Description: The Rust compiler and Cargo package manager
Homepage: https://www.rust-lang.org
Related Issues: https://github.com/termux/termux-packages/issues?q=rust
== Scala ==
Package: scala
Homepage: https://www.scala-lang.org
== Scheme ==
=== TinyScheme ===
Package: tinyscheme
Description: Very small scheme implementation
Homepage: http://tinyscheme.sourceforge.net/home.html
=== Guile ===
Package: guile
Homepage: http://www.gnu.org/software/guile/
== Smalltalk ==
Package: smalltalk
Description: Smalltalk-80 language implementation by GNU
Homepage: http://smalltalk.gnu.org/
== Swift ==
Package: swift
Description: Swift compiler
Homepage: https://swift.org/
== Tcl ==
Package: tcl
Homepage: https://www.tcl.tk/
== See Also ==
* Development
* Editors
* IDEs