All Projects β†’ patoline β†’ Patoline

patoline / Patoline

Licence: gpl-2.0
Patoline typesetting system

Programming Languages

ocaml
1615 projects

Projects that are alternatives of or similar to Patoline

Ramda Debug
🐏 Debugging for Ramda.
Stars: ✭ 113 (-8.87%)
Mutual labels:  functional-programming
Cyclejs
A functional and reactive JavaScript framework for predictable code
Stars: ✭ 9,996 (+7961.29%)
Mutual labels:  functional-programming
Lambda Lantern
πŸ§™ β€Žβ€Ž A 3D game about functional programming patterns. Uses PureScript Native, C++, and Panda3D.
Stars: ✭ 122 (-1.61%)
Mutual labels:  functional-programming
Kind
A modern proof language
Stars: ✭ 2,075 (+1573.39%)
Mutual labels:  functional-programming
Articles
thoughts on programming
Stars: ✭ 1,515 (+1121.77%)
Mutual labels:  functional-programming
Aardvark.base
Aardvark is an open-source platform for visual computing, real-time graphics and visualization. This repository is the basis for most platform libraries and provides basic functionality such as data-structures, math and much more.
Stars: ✭ 117 (-5.65%)
Mutual labels:  functional-programming
F
Functional stuff for Python
Stars: ✭ 113 (-8.87%)
Mutual labels:  functional-programming
Riko
A Python stream processing engine modeled after Yahoo! Pipes
Stars: ✭ 1,571 (+1166.94%)
Mutual labels:  functional-programming
Pointless
Pointless: a scripting language for learning and fun
Stars: ✭ 116 (-6.45%)
Mutual labels:  functional-programming
Zparkio
Boiler plate framework to use Spark and ZIO together.
Stars: ✭ 121 (-2.42%)
Mutual labels:  functional-programming
Cilib
Typesafe, purely functional Computational Intelligence
Stars: ✭ 114 (-8.06%)
Mutual labels:  functional-programming
Dunai
Classic and Arrowized Functional Reactive Programming, Reactive Programming, and Stream programming, all via Monadic Stream Functions
Stars: ✭ 115 (-7.26%)
Mutual labels:  functional-programming
Compose State
Compose multiple setState or getDerivedStateFromProps updaters in React
Stars: ✭ 119 (-4.03%)
Mutual labels:  functional-programming
Combinators Js
🐦 Some combinators
Stars: ✭ 114 (-8.06%)
Mutual labels:  functional-programming
Reactive Turtle
Scala and Akka for kids. A Functional Programming approach for the well known LOGO.
Stars: ✭ 122 (-1.61%)
Mutual labels:  functional-programming
Rxtuples
Simple tuples to use with RxJava [STABLE]
Stars: ✭ 113 (-8.87%)
Mutual labels:  functional-programming
Awesome Functional Python
A curated list of awesome things related to functional programming in Python.
Stars: ✭ 1,637 (+1220.16%)
Mutual labels:  functional-programming
Lightweight Stream Api
Stream API from Java 8 rewritten on iterators for Java 7 and below
Stars: ✭ 1,582 (+1175.81%)
Mutual labels:  functional-programming
Ghc Grin
GRIN backend for GHC
Stars: ✭ 123 (-0.81%)
Mutual labels:  functional-programming
Test State
Scala Test-State.
Stars: ✭ 119 (-4.03%)
Mutual labels:  functional-programming

Patoline - A modern digital typesetting system

This repository contains the source code of Patoline, which homepage is hosted at https://patoline.github.io.

Dependencies

The minimal dependencies are

  • OCaml (version 4.03.0 or higher)
  • Opam (version 2.0.0 or higher)
  • Dune (version 1.2.0 or higher)
  • Ocamlfind
  • Earley (version 2.0.0)
  • Camlzip
  • Sqlite3
  • Imagelib
  • GNU make

To setup a suitable OCaml environment, the simplest possible solution is to use the Opam package manager. It can be installed by following instructions at http://opam.ocaml.org/doc/Install.html. You can then install an OCaml compiler and the required libraries as follows.

opam switch 4.05.0
eval $(opam env)
opam install dune earley.2.0.0 camlzip sqlite3 imagelib

You can optionally install more Opam packages (OCaml libraries) depending on the Patoline drivers that you want to use. For instance, you will need to install lablgl for our OpenGL driver, cairo2 for our Cairo driver, kryptokit for our Patonet driver.

Compilation from source

Patoline can be compiled from source as follows:

wget https://github.com/patoline/patoline/archive/master.zip
unzip master.zip
cd patoline-master
make
make install

First Patoline document

Here is a hello world patoline document (other examples can be found in the examples folder).

======================
Hello, World!
----------------------
Patoline newbies
======================

-> Section with text

This is my //first// document! That's so **cool**!

-<

-> Section with maths

Did you known that $(a + b)Β² = aΒ² + 2ab + bΒ²$?

-<

If you copy-paste it in a file hello_world.txp, then you can compile it with the command patoline hello_world.txp. This will produce a PDF file called hello_world.pdf. Note that you can compile to other format drivers such as a webpage using SVG format or an OpenGL window. To do that, select a driver with the command patoline --driver DRIVER hello_world.txp. You can obtain the list of the existing drivers with patoline drivers (they may not all be installed).

List of developpers and contributors

Main developpers and contributors:

  • Pierre-Γ‰tienne Meunier
  • Christophe Raffalli
  • Rodolphe Lepigre
  • Tom Hirschowitz
  • Florian Hatat
  • Pierre Hyvernat
  • Guillaume Theyssier
  • Vincent Laporte
  • Alan Schmitt
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].