Workshop Live


About Conference


The Lua in Moscow Conference 2017 will be held in  Moscow, Russia, on  March 5, 2017.

The main goal of the conference is to allow the Lua community to get together and meet in person and talk about the Lua language, its uses, and its implementation. The conference is open to everyone interested in Lua.

There is no registration fee but participants are required to register because space is limited.

The spoken language of the conference is Russian. Some talks will be presented in English, without translation. See the schedule.

There will be free coffee available between talks. There would be a canteen open during the lunch break, where attendees would be able to have a lunch (paid separately).

Please make your own visa, travel and accommodation arrangements.

Contact us if you need help or have special requirements.

Venue


The conference will be held at
Mail.Ru Group office building
Leningradsky prospekt 39, corp. 79
Moscow

Visa

Make sure to check whether you need a visa to enter Russia.

Getting a visa may take some time. It is better to start early. Way to Russia seems to be a good guide on getting visas. (That guide and visa company are not endorsed by the organizers.)

Invitation letters for the conference attendees and speakers are available from the organizers, upon request. Please allow for some time to get them made.

Travel

There are three international airports in Moscow. Depending on where you are, there are good chances that you'll be able to arrange a direct flight.

If your flight arrives from (approximately) 04:00 AM to 00:00 AM, the best way to get to the city is to take a fast and comfortable Aeroexpress express train (trains from 05:00 AM to 01:00 AM, depending on the airport). Please double-check the schedule.

If you arrive at night, the best way is to arrange a taxi. Please use the official airport taxi service. Avoid private drivers. You may also use online or mobile taxi services, like Wheely, GetTaxi, or Yandex.Taxi (but using Economic class cars with Yandex.Taxi is not recommended).

Your hotel may also provide an airport transfer service, free of charge in some hotels. Make sure to ask them.

Once in the city, the best way to get around is by the extensive Moscow Subway network. Car traffic in Moscow can be very congested, especially on business days. If you rent a car or hire a taxi, you may spend a significant time in a traffic jam. At night and on weekends, the traffic is usually bearable, but keep in mind that suburban traffic (for instance, to and from an airport) is often very bad on weekends with good weather.

Accommodation

There are a great many hotels and hostels to pick from in Moscow. Use a service like booking.com to find one you like.

The conference venue is within five minutes of walk from the Moscow subway station named "Aeroport" (even though there is no actual airport there). The Moscow subway network is extensive and reliable (and very beautiful) and usually not too jammed with passengers on weekends.

FAQ


Make sure to check whether you need a visa to enter Russia. Getting a visa may take some time. It is better to start early. Way to Russia seems to be a good guide on getting visas. (That guide and visa company are not endorsed by the organizers.)
Invitation letters for the conference attendees and speakers are available from the organizers, upon request. Please allow for some time to get them made.

There are three international airports in Moscow. Depending on where you are, there are good chances that you'll be able to arrange a direct flight.

If your flight arrives from (approximately) 04:00 AM to 00:00 AM, the best way to get to the city is to take a fast and comfortable Aeroexpress express train (trains from 05:00 AM to 01:00 AM, depending on the airport). Please double-check the schedule.

If you arrive at night, the best way is to arrange a taxi. Please use the official airport taxi service. Avoid private drivers. You may also use online or mobile taxi services, like Wheely, GetTaxi, or Yandex.Taxi (but using Economic class cars with Yandex.Taxi is not recommended).

Your hotel may also provide an airport transfer service, free of charge in some hotels. Make sure to ask them.

Once in the city, the best way to get around is by the extensive Moscow Subway network. Car traffic in Moscow can be very congested, especially on business days. If you rent a car or hire a taxi, you may spend a significant time in a traffic jam. At night and on weekends, the traffic is usually bearable, but keep in mind that suburban traffic (for instance, to and from an airport) is often very bad on weekends with good weather.
There are a great many hotels and hostels to pick from in Moscow. Use a service like booking.com to find one you like. Check hotels Aerostar, Aeropolis, Ibis Dynamo, as they are close to the conference site.

Conference entry is free but requires registration. Registration link is provided here.

The spoken language of the conference is Russian. Some talks will be presented in English, without translation. The talk language will be indicated in the schedule.

Registration


Program

Sunday, March 5th


10:00—10:50 Functions in Lua Roberto Ierusalimschy
13:00—13:50 The rocky road to mcode Javier Guerra Giraldez
14:00—15:00  Lunch
18:00—18:50 Q&A session

Abstracts


  Functions in Lua
Roberto Ierusalimschy PUC-Rio

First-class functions (a.k.a. closures, lambdas, anonymous functions) are a hallmark of functional languages, but they are a useful concept in imperative languages, too.

In most imperative languages, however, first-class functions are an advanced feature used by seasoned programmers. Lua, by contrast, uses first-class functions as a building block of the language. Lua programmers regularly benefit from diverse properties of its functions for routine constructions such as exception handling, module definitions, object-oriented programming, and iterators. Moreover, first-class functions play a central role in the API between Lua and C.

In this talk, we will discuss how the mechanism of first-class functions has impacted the design of Lua and will also glimpse at its implementation.

  Challenges Building Yet Another Lua Implementation
Anton Soldatov IPONWEB

Vanilla Lua interpreter (aka PUC-Rio Lua) is quite fast, and Lua as a language is designed to be easily embeddable into other systems. But sometimes there is still a need for an alternative language implementation: For example, there may be strict business requirements about performance. At first glance, Lua ecosystem provides means for building custom implementations of the language: There is a Reference Manual which covers the language, including libraries and APIs. There are also test suites (both official and third-party) for evaluating compliance.

However, while working on a custom Lua implementation, we have faced certain problems which I'd like to discuss in this talk with the focus on:

• Interpreting the Reference Manual and integrating the official test suite;
• Choosing among multiple third party validation suites;
• Ensuring compliance for APIs provided by the Lua standard libraries.

  Using Lua as a language for fault-resistant distributed backend web-applications
Konstantin Osipov Tarantool

Tarantool - DBMS and high-load applications server, so it has special requirements to language. Reliability and performance - are main values but ease of use is very valued too. Lua, more specifically LuaJIT 2.1 is our main application language for today. Recently we added support also for Rust, Swift, C and C++. We have unique experience of "using" Lua as constantly investigating accidents and crashes from Tarantool users, which occurs both in production and developments stages. So we've got a quite complete picture of requirements for ideal language for back-end.

So my talk will be dedicated to hypothetical requirements for "ideal" language: - reliability: program must never end of host process. - predictability: garbage collection and runtime actions should be predictable for developer. - security - language syntax should be safe in runtime. This concerns usage of undeclared variables and also type system, specifically behavior at division by 0 or at overflow.

Can Lua become such language?

  The rocky road to mcode
Javier Guerra Giraldez Cloudflare

LuaJIT can run Lua at amazing speeds, but it's often hard to know what it really does and when, leading to mystification and cargo cults. Here we follow step by step the journey from Lua source code to the final machine code actually executed, using Loom as a visualization and learning tool.

  Build airplane yourself! Experience of prototyping online-marketing tools with Lua
Dmitry Potapov LogicEditor

Today there are a plenty of tools for Internet-advertisement analysis – Google Analytics, Yandex.Metrika etc. No less them for management and automation of context-advertisements: R-broker, K50, Alytics etc. These tools are good enough for their tasks. When development of own toolset makes sense? How this toolset may look like, in what sequence it should be created, what side projects may be useful? Basing on self-experience, author will try to answer for these and other questions.

  Hard work of making native plugins for a crossplatform game engine
Sergey Lerg Spiral Code Studio

Lua is a beautiful language, it makes complex things easy. In crossplatform game engines one Lua function can lead to hundreds of lines of native code (C++/Java/Obj-C) which are hidden from the game developer and let focus on the end product.

In this talk I show how I create native plugins for the Corona SDK game engine, how different implementations of the same thing on different platforms turn into beautiful uniform Lua API.

  How to make Lua-developers life better and more pleasant?
Artyom Zotov IPONWEB

IPONWEB develops cross-platform solutions for online advertising market and offers it for clients via SAAS model. Business logic is implemented in Lua so IPONWEB seeks and hires Lua developers.

Problem:
search on hh.ru for vacancies with Lua keyword returns near 700 CVs. Compare it with results for other keywords: Perl: 9000 CVs, Python: 14 000 CVs, PHP: 55 000 CVs. On job market are very few developers with Lua experience. IPONWEB business grows very rapidly in recent years and company need to hire more and more new Lua-developers. What should be done? Creation of ideal conditions for work and professional development. How we are doing it? This is what my presentation will be about :)

Organization


The conference is organized by Alexander Gladysh and the sponsors below.

Sponsored by


Contact Us

 For on-the-fly touch during the conference: +7 (906) 787-46-20, Alexander Gladysh

 agladysh@gmail.com

Other conferences

Lua Workshop 2014

Share

#luainmoscow17