Главная
Study mode:
on
1
Intro
2
Myself working on language support infrastructure
3
What's IDE-friendly? Basic support
4
An IDE needs to recognize...
5
By single file's content: violations
6
Determine syntactic construction
7
1.1. Syntax scrambled by templating/macros
8
1.2. Syntax depending on non-local information
9
1.3. Complicated parsing
10
1.4. Slow parsing
11
1.5. Syntactic ambiguities on incomplete code
12
What's declared?
13
2.1. Declaring by call
14
22. Declaring by compiler plugin
15
Which names are referenced?
16
Which names are referenced: implicit calls
17
3. Which names are referenced: Java lambdas
18
Resolve hints: where to look for declarations
19
Resolve hints: ideal (Haskell)
20
4. Resolve hints: Java
21
4. Resolve hints: local type inference
22
4. Resolve hints: return type inference
23
constraints to boost your creativity!
24
IDE-friendly and people-friendly
Description:
Explore the intricacies of designing IDE-friendly programming languages in this 45-minute Java conference talk. Gain insights from JetBrains' experience in creating IDEs for various languages, learning which features facilitate easier support and which pose challenges. Discover how static typing aids development, while compile-time macros and lambdas can complicate implementation. Examine the impact of language features on IDE performance and functionality, from basic parsing to advanced capabilities. Delve into topics such as syntax recognition, declaration methods, name referencing, and resolution hints. Understand the balance between IDE-friendliness and user-friendliness in language design, equipping yourself with valuable knowledge for creating more efficient and supportable programming languages.

Designing IDE-Friendly Programming Languages

Java
Add to list