[Haskell-cafe] [ANNOUNCE] Fmark markup language

José Lopes jose.lopes at ist.utl.pt
Tue Sep 18 05:57:40 CEST 2012

Hello Kris,

Thank you for your email.

At this moment, Fmark is not as powerful as Markdown, also because Fmark 
just started.
Markdown offers things such as Blockquotes, Lists, Code blocks, links, 
emphasis, images, etc.
Fmark does not offer as many features: for now, there are only 
paragraphs, headings,
subsections (endless nesting) and footnotes. In the near future, I want 
to bolds/italics,
ordered and unordered lists, links, and later on as many elements as 
possible :)

The problem with Fmark is also its greatest feature. While other markup 
introduce special syntactic characters to give meaning to the document's 
I would like to take a different approach: I want to use characters that 
people already
use in document writing to achieve the same result. For example, in 
Mediawiki a
heading is some text surrounded by equal signs. But in Fmark a heading 
is simply some
text that does not end in a punctuation character, such as period or an 
exclamation mark.
I argue that this is a more "natural" approach.

I want to find a natural way of not burdening the user with the task of 
having to learn
some special syntax in order to write a document. Instead I want to find 
"natural" ways
of writing and use those ways to reconstruct the elements in a document. 
Of course,
what is natural is subjective and that is why I want to find a good 
tradeoff between
expressiveness and simplicity in the syntax. For example, in Fmark a 
footnote is some
text surrounded by square brackets. Maybe you find this natural, maybe 
you don't. If a
handful of people defend a more natural way of writing footnotes I want 
to implement
the way they say. If there is a more natural way of doing this I want to 
find it. But for now
I think square brackets are better than the equal signs or any other 
strange syntactic
character such as exclamation marks and so on...

Another thing about Fmark is styles. I want to use fmark personally to 
write papers, using
Latex as backend. While experimenting with previous versions of Fmark I 
realized that I
could not specify the title, the author, the date, and the abstract. 
which are essential in a
paper. I came up with an idea which I think is quite interesting. I 
wrote another document
also using Fmark which only had the words "Title", "Author", "Date", and 
"Abstract". And
then I combined these two documents together, such that, Fmark 
associated title, author,
date and abstract, with the corresponding content. I thought the idea 
was interesting
because the content and style documents have both the same structure and 
are both
written in Fmark. Of course, there is still a long way to go, in order 
to be able to fully
customize a document.

But styles are a good and simple approach, similar to document classes 
in Latex: the idea is
to write one document (content) and then use multiple (predefined, user 
defined) styles, such
as, article, report, etc, to stylize your document. Another interesting 
thing I have been thinking
about (but not implemented yet) is recursion in document styling. In a 
way, weaving a style
with content can be compared to matching a regular expression.

Anyway, these are just some key ideas. I see Fmark as a work in progress 
and in a way as a
research project, trying to find a natural way of writing documents 
while escaping as much
as possible from the syntax of a programming language. I also have a 
metagoal with this
project: if my father (the non programming guy) could use it to write 
his PhD dissertation,
I would be quite happy :)

If you have any more questions I would be happy to answer.
But if you're interested in using markup languages for blogs perhaps a 
HTML backend
in Fmark would be more interesting for you. Although, XML + JavaScript + 
CSS is also possible.

Best regards,

On 18-09-2012 04:25, Kristopher Micinski wrote:
> Jose,
> So I'm interested to hear you opinion on this as well...
> I use Pandoc with Markdown through Hakyll, which allows you to do a
> fair amount of cute things that are just really helpful for
> maintaining a blog (for example..).  But I didn't get this from
> reading your github readme: what makes your markup language special?
> Could you give an example of how the language is more expressive than
> (say) markdown processed through Pandoc (I only mention because it
> lets you process LaTeX, very helpful, right...) or something
> comparable?
> kris
> On Mon, Sep 17, 2012 at 11:09 PM, José Lopes <jose.lopes at ist.utl.pt> wrote:
>> Hello everyone,
>> I just wanted to share a package I created called Fmark, now available
>> on HackageDB.
>> Feedback both on the project and on the code is greatly appreciated :)
>> Fmark (Friendly Markup) is a very simple markup language without
>> syntax and simple but sophisticated document styling, capable of
>> producing PDF and XML files.
>> The key philosophy behind this markup language is to eliminate the
>> strange syntactic characters seen in most markup languages, but
>> at the same time try to maintain a high level of expressiveness, using
>> only document reconstruction.
>> Check it out
>> http://hackage.haskell.org/package/fmark
>> https://github.com/jabolopes/fmark
>> Best regards,
>> José
>> --
>> José António Branquinho de Oliveira Lopes
>> 58612 - MEIC-A
>> Instituto Superior Técnico (IST), Universidade Técnica de Lisboa (UTL)
>> jose.lopes at ist.utl.pt
>> _______________________________________________
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
>> http://www.haskell.org/mailman/listinfo/haskell-cafe

José António Branquinho de Oliveira Lopes
Instituto Superior Técnico
Technical University of Lisbon

More information about the Haskell-Cafe mailing list