Stack Exchange
log in sign up chat discuss faq users badges

Area 51 » Technology

definition commitment beta
207
followers
Share This

Programming Language Design and Implementation

Beta Q&A site for designers and implementers of computer programming languages

13
votes
5
answers

What is a programming language?

may 15 at 0:18 Solomon Ucko 151
5
votes
0
answers

PLDI's current chat room

apr 26 at 19:28 Radvylf Programs 2,334
28
votes
1
answer

Congratulations to Programming Language Design and Implementation on completing the Commitment phase!

apr 26 at 18:03 Deko Revinio 112
9
votes
1
answer

Should we allow questions about other parts of the software toolchain?

mar 20 at 20:47 V2Blast♦ 186
7
votes
3
answers

Will questions about building and maintaining a programming language's community or contributors be allowed?

mar 8 at 15:51 warren 7,720

show 17 more discussions
discuss this proposal

This proposal is now in the Beta phase — example questions are locked!

115 Example Questions (7 closed)

active newest votes
up vote 1 down vote
How should I compile gotos in my language into WASM?
added by Bubbler, edited by warren Dec 5 '22 at 15:57
link
Relooper algorithms are used for decompiling code. While an important topic, it doesn't seem particularly relevant to programming language design. – curiousdannii Nov 19 '22 at 9:02
1  
@curiousdannii Relooper is relevant to compiling to wasm if the source language has gotos or other forms of control flow not supported by wasm. – Bubbler Nov 20 '22 at 1:38
1  
@curiousdannii area51.meta.stackexchange.com/questions/32843/… – mousetail Nov 22 '22 at 6:51
1  
Even if that is the case, I'd prefer a question that asks it from the perspective of implementation. E.g. "How should I compile my goto into wasm?" – Nathan Merrill Dec 1 '22 at 19:57
1  
Hmm yeah, makes sense. I'll change it. – Bubbler Dec 1 '22 at 23:20
show 2 more improvement suggestions
up vote 1 down vote
What are the downsides of making all strings immutable to improve security and concurrency?
added by James Risner Nov 24 '22 at 13:18
link
3  
A question like "why not" should probably be phrased more like "what are the downsides of", particularly in this case where many languages do make all strings immutable. – kaya3 Dec 1 '22 at 13:26
up vote 1 down vote
How do I tell a while or for loop to continue or break using the visitor method?
added by lyxal Dec 12 '22 at 6:33
link
up vote 1 down vote
What are the advantages/disadvantages of handling big numbers (like in Python)?
added by justANewbie Dec 17 '22 at 16:44
link
By "handling big numbers", do you mean "having a built-in arbitrary-precision integer type"? Do you mean "having such a type exclusively, without also supporting concretely sized integer types"? Or just what? – Anonymous Jan 12 at 19:39
@Anoymous I mean "having a built-in arbitrary-precision integer type", specifically more than 64 bits. – justANewbie Jan 13 at 7:40
up vote 1 down vote
What are the tradeoffs between types of strings and numbers?
added by mathcat Jan 1 at 10:25
link
might be better as a looser questions, like the tradeoffs between types of strings and numbers? – cjquines Feb 5 at 10:17
up vote 1 down vote
How do I implement eval in a compiled language?
added by mousetail Jan 16 at 10:12
link
what do you mean by "eval"? – warren Jan 25 at 17:33
Like the eval function in JS or python – mousetail Jan 25 at 17:43
up vote 0 down vote
How do I convert this AST into JVM bytecode?
added by Seggan Nov 18 '22 at 2:40
link
2  
This seems a little too open-ended. Perhaps this could be split into questions about generating bytecode, reading bytecode, Java interop, etc.? – Original Original Original VI Nov 18 '22 at 16:59
Yeah now I agree. Will edit. – Seggan Nov 18 '22 at 17:01
up vote 0 down vote
What is the out-of-thin-air value problem (OOTA) and how can I avoid it in my language’s memory model?
added by user3840170 Nov 19 '22 at 12:32
link
up vote 0 down vote
How should I define the semantics of garbage collection and finalization to avoid use-after-free in the face of optimizing compilers?
added by user3840170 Nov 19 '22 at 12:37
link
up vote 0 down vote
What are the advantages of a tree node type as one of the type system primitives, like how arrays are in other languages?
added by bigyihsuan Nov 19 '22 at 16:21
link
up vote 0 down vote
How does a Pratt parser work? How do I write one for my grammar?
added by Bubbler Nov 20 '22 at 22:39
link
up vote 0 down vote
For an event programming language, how should I execute scripts with the same event-trigger?
added by UndoneStudios Nov 21 '22 at 6:00
link
up vote 0 down vote
Why are checked exceptions considered so bad?
added by James Risner Nov 24 '22 at 12:48
link
Are they? Java's implementation of them might be unwieldy, but I've never heard criticism of the concept itself. – Unrelated String Nov 28 '22 at 4:02
4  
As far as I tell, the primary complaint that I see is that it's not uncommon to get in situations where a method is declaring multiple distinct checked exceptions, and that the frequency of handling them causes developers to frequently suppress them. Even then, I think an answer that says "Checked exceptions are poorly regarded because of Java, here's a better way to do them", would be a fine answer to this question. – Nathan Merrill Dec 1 '22 at 20:09
Perhaps it could be asked about Java in particular? – user3840170 Dec 19 '22 at 11:13
up vote 0 down vote
Good design should specify in the code if the result could be null? Such as using a 'Record? R = GetRecord()'
added by James Risner Nov 24 '22 at 13:11
link
This isn't a question. – Ray Butterworth Jan 12 at 20:16
2  
It's phrased poorly, but it is a legitimate, if subjective, question about programming language design. Granted, I don't think we'd need a whole question about the "billion dollar mistake" either--it's a bit too straightforward... – Unrelated String Jan 15 at 9:52
up vote 0 down vote
What are the disadvantages or tradeoffs of polymorphic literals, like Haskell has for numbers?
added by Unrelated String Nov 28 '22 at 5:56
link
up vote 0 down vote
What are the pros and cons of transpiled languages versus interpreted?
added by user223163 Nov 30 '22 at 1:08
link
up vote 0 down vote
Can a special syntax for the Decorator pattern be a sufficient substitute for class-based inheritance?
added by Philipp Dec 2 '22 at 13:26
link
up vote 0 down vote
How can I implement multiple character encoding (unicode, ascii, ebcdic...) to handle arbitrary character type casting?
added by warren Dec 5 '22 at 14:33
link
up vote 0 down vote
When is it ok to ignore arithmetic overflows (eg trying to store a 16bit value in an 8bit type)?
added by warren Dec 5 '22 at 15:58
link
inspired by: area51.stackexchange.com/proposals/127456/… – warren Dec 5 '22 at 15:59
up vote 0 down vote
Why can register allocation in SSA be done in polynomial time?
added by NaCl Dec 14 '22 at 18:39
link
This sounds like a sort of reference question that should be asked by someone capable of self-answering. – Anonymous Jan 12 at 19:35
up vote 0 down vote
How do I perform symbolic execution of loops?
added by NaCl Dec 14 '22 at 18:42
link
up vote 0 down vote
How do I determine the best order of optimizations?
added by NaCl Dec 14 '22 at 18:44
link
1  
This seems much too vague and unfocused to be answerable. Which optimizations would you be considering? – Anonymous Jan 12 at 19:58
up vote 0 down vote
What are design aspects of a programming language to allow for domain specific applications? e.g. extensible syntax
added by NaCl Dec 14 '22 at 18:47
link
up vote 0 down vote
How should I approach building a compiler for a dependently typed programming language?
added by brendanzab Dec 15 '22 at 9:20
link
up vote 0 down vote
What are the advantages of having first-class functions versus having only anonymous class with fancy sugars?
added by ice1000 Dec 15 '22 at 19:20
link
up vote 0 down vote
Why do some programming languages choose to have a dedicated keyword for `elseif` instead of using `else` + `if` like in C?
added by ice1000 Dec 15 '22 at 19:24
link
up vote 0 down vote
What are the advantages/disadvantages of strongly typed vs weakly typed languages?
added by justANewbie Dec 17 '22 at 16:53
link
English grammar demands noun phrases here; adjectival phrases don't nominalize implicitly. So: "... strong typing vs weak typing?" Alternately: "strongly typed vs weakly typed languages?", allowing the adjectival phrases to modify something. – Anonymous Jan 12 at 19:34
up vote 0 down vote
What are the advantages/disadvantages of top-down parsing vs. bottom-up parsing?
added by Thisaru Guruge Jan 4 at 12:35
link
up vote 0 down vote
Should a CAS (Computer Algebra System) distinguish between mathematical variables and programming variables?
added by alephalpha Jan 9 at 8:35
link
up vote 0 down vote
What are the advantages and disadvantages of dynamic (as opposed to lexical) scoping?
added by Jan 12 at 19:29
link
up vote 0 down vote
How can I implement more than one of {call by value, call by reference, Python/Java style "call by assignment", ...} in the same language?
added by Jan 12 at 19:56
link
up vote 0 down vote
When implementing an integrated preprocessor and compiler, should the preprocessor have a separate lexer from that of the compiler itself?
added by Logan Devine Jan 15 at 1:22
link
up vote 0 down vote
What are the upsides of using indentation (spaces/tabs) to describe a part of the syntax as opposed to explicit symbols (`{...}`, `BEGIN...END`)?
added by stackprotector Jan 16 at 18:10
link
up vote 0 down vote
Why did line numbers fall out of favor with language designers?
added by warren Jan 25 at 17:32
link
I can't say this is clearly out of scope, but I wouldn't call it a good question. Line numbers are transparently an artifact of punch cards, unstructured programming, and primitive editors; it's hard to imagine why they would stick around. – Unrelated String Jan 26 at 3:48
1  
@UnrelatedString - if this proposal is about implementation, too (per the name and description), implementing a classic language could be of interest :) – warren Jan 27 at 14:08
up vote 0 down vote
When implementing a classic language (eg BASIC), how can I avoid/rework line numbers?
added by warren Jan 27 at 14:09
link
inspired by area51.stackexchange.com/proposals/127456/… – warren Jan 27 at 14:09
up vote 0 down vote
What are some advantages/disadvantages of fixed arity parsing in a golfing language?
added by Jacob Jan 27 at 17:48
link
up vote 0 down vote
What are the downsides of having types for floats and integers?
added by mathcat Feb 5 at 10:43
link
up vote -1 down vote
How to infer a type as specific as possible in an object-oriented language?
added by Original Original Original VI Nov 18 '22 at 1:23
link
up vote -1 down vote
How does iterative parsing work and when is it useful?
added by Lev Knoblock Nov 18 '22 at 2:59
link
1  
Is this about parsing a source change into an AST change? That’s typically called “incremental parsing”. “Iterative parsing” as a term of art seems to either contrast with “recursive parsing”, or refer to parsing in multiple, increasingly specific passes. – Jon Purdy Nov 18 '22 at 17:44
up vote -1 down vote
What are the ways of [storing|indexing|counting|etc] Unicode text data?
added by Adám, edited by warren Dec 5 '22 at 16:53
link
1  
I think fundamentally, this is a good question, but I'd prefer "storing" over "dealing with", as "dealing" is a bit vague. – Nathan Merrill Dec 1 '22 at 19:59
@NathanMerrill I intended to include things like slicing, indexing, counting, etc. – Adám Dec 1 '22 at 22:00
1  
"How can unicode text data be indexed?" would be a more specific question. Slicing is just indexing twice, and counting is somewhat implied since the number of characters is equal to the last index plus one (though "how can I count characters in Unicode text data?" might work as a separate question). – kaya3 Dec 2 '22 at 13:39
1  
@Adám - made a tweak so it's more inline with what you're proposing – warren Dec 5 '22 at 16:54
1  
I think there would rather be a question about what gotchas exist in dealing with Unicode (which could be answered by highlighting topics like collation, characters composed of multiple code points etc.), and then separate questions about how to deal with each of those. – Anonymous Jan 12 at 19:38
prev 1 2 3 next

This site is in

Public Beta

Anyone can participate!

Sites remain in beta for at least 180 days to build up a critical mass of users, questions, and participation.

proposed by

Redwolf Programs
42.3k●9●181●470

10 months ago

edited by

warren
108k●95●535●1155

8 months ago

viewed

26,594 times

latest activity

3 months ago

followers

users also following

2.9% Proof Assistants
2.9% Drones and Model...
2.4% Matter Modeling
2.4% Quantum Computing
63.3% only this proposal

followers active in

43.5% Stack Overflow
22.7% Meta Stack Exchange
19.8% Code Golf
18.8% Programming Langu...
18.8% Programming Langu...
16.4% Mathematics

recent followers

added Jun 8 at 10:57
Petəíŕd
2,625●2●6●47
added May 15 at 7:01
user223895
51●1
added May 14 at 20:05
user223893
51●1
added May 4 at 21:11
Smitop
9,670●5●33●98
added May 1 at 20:59
user223868
51●1
added Apr 24 at 12:26
Skgland
1,013●10●25
added Apr 18 at 10:08
l0b0
165k●99●645●1140
added Apr 16 at 22:33
skreutzer
51●2
added Apr 16 at 21:04
saintali
5,437●2●33●68
added Apr 16 at 7:03
otesunki
51●2
added Apr 14 at 11:09
TheOnlyTails
51●1
added Apr 13 at 22:31
Matt and Neil
32.6k●7●102●184
added Apr 13 at 20:33
Jasmijn
13.4k●2●44●84
added Apr 13 at 14:18
Mark Glossop
51●1
added Mar 24 at 2:22
Franklin Zhou
51●1
added Mar 1 at 18:27
hazer-hazer
51●1
added Feb 16 at 14:52
The Thonnu
24.8k●9●34●175
added Feb 13 at 19:25
t0mm13b
49.8k●9●138●218
added Feb 8 at 11:50
Dangeroustuber
51●1
added Feb 5 at 21:50
Michael Kolesidis
658●1●4●20
added Feb 5 at 18:35
124816
51●2
added Feb 5 at 15:43
musiKk
22.6k●6●98●176
added Feb 5 at 10:17
Arduino Sentinel
3,279●23●54
added Feb 3 at 7:11
Maximilian Ballard
1,705●1●12●51
added Feb 1 at 18:37
user223486
51●1
added Feb 1 at 15:24
user223485
51●1
added Feb 1 at 12:23
user223483
51●1
added Jan 31 at 21:06
Mike C
34.1k●15●93●138
added Jan 30 at 10:15
Nimesh Neema ♦ 1
62.5k●27●211●338
added Jan 29 at 19:24
wizzwizz4 ♦ 1
51.3k●17●218●575
added Jan 29 at 9:39
user223477
51●1
added Jan 29 at 6:07
goomba
51●2
added Jan 29 at 0:35
Jacob
6,579●1●21●90
added Jan 28 at 15:15
Roan
1,351●2●19●35
added Jan 28 at 14:59
user223469
51●1
added Jan 25 at 20:12
taylor.2317
4,286●1●25●136
added Jan 25 at 17:18
warren
108k●95●535●1155
added Jan 24 at 5:06
just Paul
51●1
added Jan 23 at 11:24
user223454
51●1
added Jan 22 at 22:09
Riley Lynch
51●2
feed icon proposal feed
faq | blog | legal | privacy policy | contact us | feedback always welcome
site design / logo © 2023 Stack Exchange Inc; user contributions licensed under cc by-sa; see the licensing help page for more information.
rev 2023.9.22.623