[This blog post describes the release plans of Hyang 1.3.0 from the Hyang Programming Language writer and creator, Hilman P. Alisabana. This blog post is licensed under the same license as the license of this blog (Creative Common License Attribution-ShareAlike version 3.0). You can email the writer’s email address <alisabana@hyang.org> for further informations about this blog post.]
Hyang 1.3.0 is planned to be released this year. This is the “heavyweight” version of Hyang because a lot of additions, new features, and some big changes. It will come with so many default packages and libraries (including Abah compiler and a number of base packages) and about 15+ prebuilt packages. The Abah compiler of Hyang and its JIT capabilitias (called Jitabah) will be integrated and natively registered within Hyang 1.3.0 distribution, and it’s used by default when starting Hyang prompt.
Hyang 1.3.0 will also have a version name “Iced Avocado”; the “heavyweight” version of Hyang but with a fruitful and nutritious packages.
What’s really new on the next in this world is that Hyang 1.3.0 will have an interface to deal with Alisabana’s Constant. This is another good news for Alisabana’s Constant fans worldwide. 🙂
Although Hyang 1.3.0 was built under Debian GNU/Linux, as below :
Hyang 1.3.0 source code is being developed for Unix-like machines, so it will configure and build under a number of common platforms including platforms of CPU-linux-gnu for the i386
, amd64/x86_64
, alpha
, arm
, arm64
, hppa
, mips/mipsel
, powerpc
, s390x
and sparc
CPUs, i386-hurd-gnu
, CPU-kfreebsd-gnu
for i386
and amd64
, i386-pc-solaris
, rs6000-ibm-aix
, sparc-sun-solaris
, x86_64-apple-darwin
, x86_64-unknown-freebsd
and x86_64-unknown-openbsd
.
In addition to Unix-likes, with helps the GNU Compiler Collection (GCC) manuals, Hyang 1.3.0 source code is also being developed for Windows and Mac OS families of operating systems, although all Hyang developers did not have access to Windows and Mac.
Below is the screenshot of a successful configure result of hyang-devel
(Hyang 1.3.0 latest development), after running the ./configure
command :
Hyang 1.3.0 will have interfaces to procedures written in the C, C++, Obj-C, Fortran and Java for efficiency. If your installed GCC versions do not support C++17 compiler and Obj-C compiler, try a later version of GCC, at least GCC 7.4, or later. (Update: see my next post on sharing about how to build and install GCC version 8.3 : In bahasa Indonesia).
Below is the screenshot of compilation result (after running the make
command) to hyang-devel
. When hyang
is called from the terminal it’ll look something like this :
With the ./configure
and make
command, everything should run well. You don’t need to install Hyang 1.3.0 to run Hyang. But for a large sets of project it is recommended to install Hyang with the root access, for instance using the command sudo make install
.
Unlike Hyang 1.2.x series which are licensed under the terms of MIT license, Hyang 1.3.0 will be distributed mainly under the terms of GNU General Public License version 3 or later, and some files still use version 2. Below is the screenshot of output to the function license()
:
A copy from above :
Hyang software package is distributed under the terms of GNU
General Public License, either Version 2 or Version 3.
The terms of version 3 of the license are in a file called COPYING
which you should have received with this software package
and which can be displayed using hyangShowDoc("COPYING").
Version 2 can be displayed using hyangShowDoc("GPL-2").
You should have received copies of the licenses along with this
software package. If not, see <http://www.gnu.org/licenses/>.
A small number of files (the API header files listed in the
HYANG_DOC_DIR/COPYRIGHTS) are distributed under the terms of
LESSER GNU GENERAL PUBLIC LICENSE, version 2.1 or later.
This can be displayed using hyangShowDoc("LGPL-2.1").
Version 3 of LGPL can be displayed using hyangShowDoc("LGPL-3").
'Thank you for using Hyang, and enjoy coding!'
>
Hyang 1.3.0 provides a modern interface to mathematical and statistical algorithms, and some modern computational tasks including AI and data sciences. The Hyang 1.3.0 distribution also contains utilities for parallel computations, neural networks, spatial correlation and “monadic” space analysis, genetic algorithms, survival analysis, recursive partitions, some algorithms to deal with lattice stuffs, bootstrapping tools, kernel smoothing, and many more to come later.
On mathematics and statistics, Hyang 1.3.0 has a large sets of functionality for a large number of modern research topics, including linear and generalized linear analysis, nonlinear regression analysis, time series analysis, parametric and nonparametric tests, clustering, smoothing, structural equation modeling (SEM), partial least square (PLS), fuzzy logic, etc etc…, also provides a flexible graphical environment for creating various kinds of data visualization.
Hyang 1.3.0 consists of a language; an interpreter plus a compiler (Abah) with a JIT (Just-In-Time) capabilities (Jitabah); run-time environment with graphics, a debugger, access to certain system functions, and the ability to run programs within script files.
Hyang 1.3.0 is a programming and scripting language that is influenced by GNU software projects, and inspired by a number of programming languages including C, C++, Obj-C, Fortran, Lua, Scheme, R, Java, Python and Perl.
Below is a screenshot of the output from function contributors()
:
Complete output from function contributors()
above is here :
Authors of Hyang.
Hyang was initially written by Hilman P. Alisabana in early 2017.
On its develepment Hyang was influenced and inspired by many other
programming and scripting language including C, C++, Java, Fortran,
Perl, Python, Scheme, Lua and R.
There has been a list of contibutors of Hyang, currently consisting of
M. Sindu Natama
Inne Susanti
Yazid Amini
Ervina Larasati
Nadya
Dara Irawan
Lena C. S.
Tedja Arsyad
Dhian Shaphira
Rida Farida
Anna Nita
Aldi Dinata
Nikita Yusuf
Yan
A list of authors of code from other projects outside Hyang included
in the Hyang distribution are listed in the COPYRIGHTS files.
Hyang is a programming and scripting language that was influenced
by GNU software projects, and inspired by a number of programming
languages including C, C++, Obj-C, Fortran, Lua, Scheme, R, Java,
Python and Perl.
Hyang would say thanks to the open source communities worldwide
for the invaluable helps with the codes and documentations that
has been adopted by Hyang and is acknowledged in the code files.
Other contributors outside the Hyang Language Foundation have
written codes that has been adopted and modified accordingly by
Hyang and is acknowledged in the source code files, including :
Lachlan Patrick, Catherine Loader, Ei-ji Nakama, Ulrich Drepper,
Bruno Haible, Gordon Matzigkeit, Gary V. Vaughan, Scott J. Remnant,
David MacKenzie, Paul Eggert, Patrick Daly, Achim Zeileis, Angus
North, Jim McDonald, Wim Rijnders, Ville Laurikari, Bjorn Reese,
Daniel Stenberg, Arthur D. Olson, Yukihiro Nakadaira, Martin F.
Gergeleit, Christopher R. Thewalt, DaviD W. Sanderson, Ross Ihaka,
Julian Seward, Alan Richardson, Noah Friedman and of course the GNU
project writers and the Free Software Foundation; many more, too
numerous to mention here.
The Hyang Language Foundation (HLF) may decide to give out email
address e.g., @hyang.org and an account from Hyang
websites to contributors to the Hyang project (even without making
them members of the HLF) when in the view of the HLF this would help
advance the Hyang project.
(END)
Other informations for Hyang 1.3.0 release plan :
- Plan for various kinds of file formats for any kind of Hyang documentations, manuals, FAQ, and NEWS files. These file formats including HTML, LaTeX and PDF. All and everything about making them are compiled within Hyang build system. From there, one can obtain formats converted to plain ASCII text, DVI, GNU info, HTML, PDF, PostScript, as well as the Texinfo source used for creating all these formats using the GNU Texinfo system. All of these codes can be built directly (and/or separately) during (and after) Hyang compilation process. For example, by issuing the following commands:
make latex
, make pdf
, and make html
after compilation process.
- Plan for Hyang bug tracking system placed at hyang.org website and integrate it within Hyang 1.3.0 distribution system.
- Plan for Hyang Package Archive (HYPA) placed at hyang.org website and integrate it within Hyang 1.3.0 distribution system.
- Plan for placing Hyang source code repositories and all Hyang default packages (including base and prebuilt packages) on public domain. Current versioning system of Hyang 1.3.0 development is using SVN and placed on private domain. Other plan is using git (in addition to svn one).
- Etc. (all other parts will be integrated within Hyang distribution system).