https://github.com/gnudatalanguage/gdl Skip to content Sign up * Product + Features + Mobile + Actions + Codespaces + Packages + Security + Code review + Issues + Integrations + GitHub Sponsors + Customer stories * Team * Enterprise * Explore + Explore GitHub + Learn and contribute + Topics + Collections + Trending + Learning Lab + Open source guides + Connect with others + The ReadME Project + Events + Community forum + GitHub Education + GitHub Stars program * Marketplace * Pricing + Plans + Compare plans + Contact Sales + Education [ ] * # In this repository All GitHub | Jump to | * No suggested jump to results * # In this repository All GitHub | Jump to | * # In this organization All GitHub | Jump to | * # In this repository All GitHub | Jump to | Sign in Sign up {{ message }} gnudatalanguage / gdl Public * Notifications * Fork 53 * Star 184 GDL - GNU Data Language License GPL-2.0 license 184 stars 53 forks Star Notifications * Code * Issues 244 * Pull requests 4 * Discussions * Actions * Wiki * Security * Insights More * Code * Issues * Pull requests * Discussions * Actions * Wiki * Security * Insights This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository. master Switch branches/tags [ ] Branches Tags Could not load branches Nothing to show {{ refName }} default View all branches Could not load tags Nothing to show {{ refName }} default View all tags 27 branches 24 tags Code Latest commit @alaingdl alaingdl Update tiff.cxx ... 8e089f3 May 11, 2022 Update tiff.cxx to avoid complain by some compilers (not a long long ...) 8e089f3 Git stats * 6,617 commits Files Permalink Failed to load latest commit information. Type Name Latest commit message Commit time .github/workflows This implements a way to become more independent from the plplot driv... Feb 23, 2022 CMakeModules try another way Jan 13, 2022 doc Update PROJ support Mar 14, 2021 obsolete Merge branch 'master' into proj Mar 17, 2021 paper [no ci] minor fixes Apr 23, 2022 resource add gdl icon Mar 29, 2022 scripts This implements a way to become more independent from the plplot driv... Feb 23, 2022 src Update tiff.cxx May 11, 2022 testsuite make test_all_basic_functions faster by reducing the number of points May 5, 2022 .gitignore switch to undeprecated numpy API. Aug 8, 2021 AUTHORS Update AUTHORS Oct 18, 2021 CMakeLists.txt This implements a way to become more independent from the plplot driv... Feb 23, 2022 COPYING FSF address update in various files Jun 28, 2011 HACKING typos Mar 17, 2021 INSTALL.CMake Update INSTALL.CMake Apr 21, 2022 INSTALL.plplot typos Mar 17, 2021 MAP_INSTALL Update PROJ support Mar 14, 2021 NEWS NEWS update [skip ci] Jun 12, 2020 PYTHON.txt numarray -> Numpy transition (based on the patch by Orion Poplawski, ... Dec 31, 2010 README revisiting URLs in README (#1135) Sep 19, 2021 README.GRIB GRIB_API cleanup Jul 16, 2021 README.THREADPOOL No commit message May 5, 2022 README.md remove codacy badge (stopped working) Jan 24, 2022 config.h.cmake This implements a way to become more independent from the plplot driv... Feb 23, 2022 View code [ ] GDL - GNU Data Language Overview Getting GDL Alerts Dependencies Build-time dependencies Support, feedback and contributions Information resources Acknowledgements README.md Build status Coverage Status License: GPL v2 GDL - GNU Data Language GDL is a free/libre/open source incremental compiler compatible with IDL (Interactive Data Language) and to some extent with PV-WAVE. Together with its library routines it serves as a tool for data analysis and visualization in such disciplines as astronomy, geosciences and medical imaging. GDL development had been started by Marc Schellens back in early noughties and has since continued with help of a team of maintainers, developers, packagers and thanks to feedback from users. IDL is a registered trademark of Harris Geospatial Solutions. PV-WAVE is a product of Rogue Wave Software. Overview GDL is a domain-specific programming language and a data analysis environment. As a language, it is dynamically-typed, array-oriented, vectorised and has object-oriented programming capabilities. GDL library routines handle numerical calculations, data visualisation, signal/image processing, interaction with host OS and data input/ output. GDL supports several data formats such as netCDF, HDF4, HDF5, GRIB, PNG, TIFF, DICOM, etc. Graphical output is handled by X11, PostScript, SVG or z-buffer terminals, the last one allowing output graphics (plots) to be saved in a variety of raster graphics formats. GDL features integrated debugging facilities. The built-in widget functionality enables development of GUI-based software. GDL has also a Python bridge (Python code can be called from GDL; GDL can be compiled as a Python module). Development and maintenance of GDL is carried out targeting Linux, BSD, OSX and Windows (MinGW, Cygwin). GDL is invoked just by typing gdl but see gdl -h as it has a number of commandline options. GDL may be known as gnudl or gnudatalanguage on some operating systems. Other open-source numerical data analysis tools similar to GDL include SciPy, GNU Octave, Scilab, PDL, NCL, R, Yorick. Getting GDL See: * GDL on Linux * GDL on OSX * GDL on BSD * GDL on Windows Alerts Check the WIKI for (transient) alerts. Dependencies Packaged versions of GDL are available for several Linux distributions, BSD and Mac OS X. Please note that several features of GDL depend on compile-time configuration, and might not be available in pre-built or pre-configured packages. GDL has numerous dependencies, most of the optional but highly recommended if you want it to be areally useful tool. * readline mandatory. For easy command line editing, recalling, history. * [n]curses mandatory. Terminal management. * zlib mandatory. compressed file access. * GSL mandatory, for many math functions. * OpenMP optional, but speed will suffer if not present * Magick++ / GraphicsMagick optional, but don't you want to read/ write many image formats? * wxWidgets mandatory unless you do not want graphic outputs and widgets? * Xlib/X11 not used unless you explictly ask for it (replaced by wxWidgets for sake of compatibility on Windows, linux and MacOSX. * netCDF optional, but useful for reading this kind of data. * HDF4 optional, but useful for reading this kind of data. * HDF5 optional, but useful for reading this kind of data. * FFTW optional, but don't you need a fast fft at times? * PROJ optional but forget about mapping capabilities if absent. * Shapelib optional but forget about mapping capabilities if absent. * Expat optional but helps implement IDLffXMLSAX parser objects. * MPI optional but provides clustering facilities. * Python/NumPy optional but add python bridge and jupyter notebook. * udunits optional, units conversion * Eigen optional but provides inordinate speed enhancements... * ecCodes optional, for GRIB support. * GLPK optional, provides the SIMPLEX command. Besides, for optimal use (speed mainly), GDL incorporates slightly edited code of * dSFMT as our parallel random Generator. * delaunator as our new hyperfast triangulation. * ANTLR3 as interpretor. * Median Filtering (S. Perreault) * Median Filtering (J. Suomela) * Radix Sorting (we have written all variants up to doubles). Build-time dependencies Build and test automation is carried out using CMake. GDL interpreter has been developed using ANTLR v2 but unless you want to change the grammar (*.g files) you don't need ANTLR. All relevant ANTLR files are included in the source tree. Support, feedback and contributions Your comments are welcome! Let us know what you use GDL for. Or if you don't, why not. Which functionality are you missing/would appreciate most for coming versions. Please use the github issue-tracking system to report bugs, complaints, suggestions and comments. Code enhancements in the form of pull requests are very welcome! Note that contributions can be made in C++, IDL/GDL or Python, as well as by providing enhancements and extensions of the README files, diagnostic messages, etc. Among the major challenges GDL development is facing currently, there are: * enhancing test coverage by writing test programs in GDL * streamlining development and maintenance of GDL reference docs and examples (using the Jupyter kernel?) * bringing in into the team the needed know-how to address the backlog of ANTLR-related issues * increasing presence within and interoperability with the Python ecosystem, including adding support for Python 3 (calling GDL from Python 2 and calling Python 2 from GDL is already implemented!) Help welcome! Information resources As GDL is aimed as a drop-in replacement for IDL, resources for IDL constitute valuable sources of information for GDL users as well. These include: * the official IDL documentation * the idl-pvwave Google Group * the comp.lang.idl-pvwave usenet group archives (dating back to 1991!) * Wikipedia article on IDL and references therein * websites of IDL gurus including David Fanning and Michael Galloy * numerous tutorials and lecture notes introducing IDL There are several open source packages compatible or interoperable with GDL, including: * the MPFIT curve fitting library written in IDL (also available as a Debian package) * the IDL Astronomy User's Library written in IDL (also available as a Debian package) * the Coyote library of IDL-written utilities (also available as a Debian package) * the TeXtoIDL package * the gdlde IDE * the IDL/GDL Jupyter kernel * the IDLWAVE Emacs mode * IDL syntax highlighting module for Vim * the SingleCompile extension for Vim Alain Coulais maintains the GDL-announces mailing list. There have been quite some mentions of GDL in scientific literature which also provide example use cases. The Coulais et al. papers from the ADASS conferences are the best way to cite GDL as of now. Acknowledgements GDL development had been carried out at SourceForge in years 2003-2018 - thank you! About GDL - GNU Data Language Topics python programming-language astronomy mapping dicom antlr netcdf geophysics scientific-visualization scientific-computing hdf5 data-analysis grib plotting plplot gsl-library hdf fits-files eigen3 pv-wave Resources Readme License GPL-2.0 license Stars 184 stars Watchers 13 watching Forks 53 forks Releases 7 v1.0.1 Latest Oct 14, 2021 + 6 releases Packages 0 No packages published Contributors 26 * @GillesDuvert * @acoulais * @slayoo * @pjb7687 * @maynardGK * @alaingdl * @eloirozier * @rexso * @sflinois * @Jeanne-jw * @opoplawski + 15 contributors Languages * C++ 63.3% * IDL 17.6% * C 7.5% * Roff 4.7% * Prolog 2.3% * GAP 2.2% * Other 2.4% * (c) 2022 GitHub, Inc. * Terms * Privacy * Security * Status * Docs * Contact GitHub * Pricing * API * Training * Blog * About You can't perform that action at this time. You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.