2019年莫斯科会议节目Lua



正如我们在上次公告中所报告的那样 ,3月3日(星期日),2019年莫斯科第三届Lua国际会议将在Mail.ru Group办公室举行。

会议将分两个阶段举行:报告和研讨会。

所有报告和研讨会均将以英文进行,无需同时翻译。


报告(1号会议室)



图片 10:30开始注册

11:00-11:45“为什么(为什么不是Lua)/为什么是Lua(为什么不是)”,罗伯托·耶路撒冷,PUC-Rio

在创建编程语言时,需求中的矛盾通常会迫使作者折衷解决方案。 这在开发世界中很常见。 不同的语言以不同的方式折衷,这使得每种语言更适合某些场景,而对其他场景的吸引力较小。

Lua语言有一组目标,它确定了设计方向。 优先考虑可嵌入性,小尺寸,简单性和可移植性。 还有其他目标,例如性能和非专业程序员的易用性。

作为报告的一部分,我们将讨论这组目标的影响。 我们将看到这些目标如何影响语言本身,其使用以及其在各个领域中应用的可能性。


12:00-12:45“ resty-threadpool:在nginx中重塑Apache / resty-threadpool:在nginx中重新读取Apache”,Julien Desgats,CloudFlare

异步事件循环是扩展网络服务器的一种行之有效的方法。 nginx(就像其他成功的产品一样)基本上使用了这种特殊技术。 但是,其性能取决于关键条件:业务逻辑的制定时间不能太长,否则总体性能会迅速下降。

Cloudflare的边缘服务器非常依赖OpenResty (nginx + Lua +库)。 同时,可预测的性能至关重要。 这需要从事件循环中删除一些复杂的处理部分。 通常,以前是通过编写微服务来完成的。 Cloudflare尝试了另一种方法:使用nginx线程池函数 。 该报告将详细描述从事件周期中提取基本安全功能的问题和结果。


13:00-14:00午餐

14:00-14:45“ Tarantool团队使用Lua开发人员工具的经验/ Tarantool团队使用Lua语言开发工具的经验”,Mail.ru组的Yaroslav Dynnikov

每种编程语言都有自己的生态系统,这对于社区的福祉至关重要。 应用程序开发不仅要编写代码,还要测试代码,优化并与他人共享信息。 Tarantool项目中有很多开发人员每天都在与Lua合作。

在演讲中,我们将在Tarantool团队中讨论Lua开发的各个方面:

  • 对开发人员来说,编写线性代码有多方便?
  • 他们使用哪些工具进行调试和测试?
  • 如何成功准备文件并收集包裹?
  • 同样重要的是,它们仍然缺少哪些功能?


15:00-15:45“ Shaders and Lua / Shaders and Lua”,Sergey Lerg,螺旋码工作室

无法在Lua中编写着色器,但是可以使用此语言控制它们。 该报告的目的是演示如何使用GLSL和Lua轻松创建惊人的效果。 此外,还将提供有关在Defold游戏引擎上使用着色器的有用提示和建议。


15:45-16:15茶歇

16:15-17:00“ luajit的王朝介绍/ luajit的王朝介绍”,Mikhail Filonenko,Mail.ru集团

Dynasm是用于多种架构(x86,x86_64等)的机器代码生成器。
它由两部分组成:

  • 用C编写的机器代码生成器
  • 和Lua上的汇编程序预处理器。

原始预处理器仅适用于汇编器或C中的源代码。
另外,luapower提供了一个分支,可以使用汇编代码生成器对Lua文件进行预处理。

在某些情况下,有必要使用来自用户输入的逻辑。 我们将研究这个工具包,并创建一个简单的s表达式编译器。
主要问题:“创建用于用户输入的编译器有多方便。”


17:15-18:00“ JIT的'pairs'和'next'的挑战/ JIT中的'pairs'和'next'的编译问题”,Maxim Bolshov,IPONWEB

IPONWEB使用自己的Lua实现。 该项目是从LuaJIT 2.0分叉而来,具有所有限制。 特别是,JIT编译器不支持pairsnext函数。 但是,在我们的Lua代码库中,这是中断跟踪编译的三大原因之一,这导致强制在代码样式和应用程序性能之间进行权衡。

该报告计划:

  • 告诉调用库函数JITable是什么意思;
  • 说明在LuaJIT中pairsnext的实现的细节;
  • 讨论使编译pairs成为可能的JIT限制,以及next艰巨任务;
  • 演示解决此问题的进度。


18:15-19:00“ Lua的垃圾收集”,耶路撒冷,罗伯托,里约热内卢

罗伯托的奖金报告。


19:15-20:00圆桌会议,所有发言人

研讨会(电影院)



14:00-15:45“用于丰富应用程序的Tarantool用例/用于多功能应用程序的Tarantool用例”,Vladimir Perepelitsa,Mail.ru集团

乍一看,Tarantool是一个数据库。 而且很难看到该产品作为应用服务器的全部潜力。

该研讨会旨在展示Tarantool功能的这一部分:如何将内置的LuaJIT服务器与套接字,光纤,通道,ffi等配合使用? 如何使代码即时重载? 这些主题将在构建队列服务器的示例中逐步研究。


16:15-18:15“用Defold制作一个简单的平台游戏”,Sergey Lerg,Spiral Code Studio

平台游戏是一种非常流行的游戏类型。 其中一些很简单,另一些则非常复杂。 在研讨会的框架中,我将展示如何在Defold游戏引擎上创建基本平台游戏。 关于该主题的大多数培训材料的作者都倾向于简化一切并手动显示级别的创建,而这些级别可以自动生成,并且在根本不需要它时也使用物理引擎。


免费入场。
需要注册
地址:Leningradsky邮局Mail.ru集团办公室,第39页,第79页。

我们在2019年莫斯科的Lua等着您!

Source: https://habr.com/ru/post/zh-CN441364/


All Articles