SlideShare una empresa de Scribd logo
1 de 41
Descargar para leer sin conexión
B 	 	DSL	B 	 	DSL	
G VMG VM
M 	MM 	M
D 	S 	LD 	S 	L
https://pxhere.com/en/photo/1057524
SELECT			country,	
									COUNT(1)	AS	count
FROM					Customer	
GROUP	BY	country;
Given	my	account	has	a	balance	of	€	430	
When	I	receive	a	money	transfer	of	€	500	
Then	my	account	should	have	a	balance	of	€	930
Setup(	
				Boat	on	StartingShore,	
				Wolf	on	StartingShore,	
				Sheep	on	StartingShore,	
				Cabbage	on	StartingShore	
)	execute	(	
				Boat	move	Cabbage	to	StartingShore,	
				Boat	move	Sheep	to	DestinationShore,	
				Boat	move	None	to	StartingShore,	
				Boat	move	Cabbage	to	DestinationShore,	
				Boat	move	Sheep	to	StartingShore,	
				Boat	move	Wolf	to	DestinationShore,	
				Boat	move	None	to	StartingShore,	
				Boat	move	Sheep	to	DestinationShore	
)	
https://github.com/NRBPerdijk/dsl-for-the-dense/
+	+	>	+	+	+	+	+	[	<	+	>	-	]	+	+	+	+	+	+	+	+	[	<	+	+	+	+	+	+	>	-	]	<	.
BB
This	program	adds	the	numbers	2	and	5	
	
+	+																Store	the	number	2	in	the	first	slot	
>	+	+	+	+	+								Store	the	number	5	in	the	second	slot	
	
[																		Move	back	and	forth	between	first	and	second	slot	
	
				<	+	>	-								While	"moving"	ones	from	the	second	to	the	first	slot
]	
	
The	first	slot	now	has	'7'	in	it	but	we	need	to	output	the	ASCII	value	for	that
The	ASCII	value	is	48	higher	than	the	number	we	have	
	
The	second	slot	is	now	empty
It	will	act	as	a	counter	so	we	can	add	6	*	8	to	the	first	slot
+	+	+	+	+	+	+	+				Store	8	in	it	
	
[																		Again	move	back	and	forth	between	first	and	second	slot	
				<	+	+	+	+	+	+		while	adding	6	to	the	first	slot	
				>	-												before	reducing	the	counter	in	the	second	slot
]	
	
<	.																Go	back	to	the	first	slot	and	print	it
0 1 2 3 4 ... 29	997 29	998 29	999
2 5 3 0 0 0 0 0
↑
command meaning
+ increase	value
- decrease	value
. print	value	to	std	out
, read	one	byte	from	std	in
[ if	value	eq	0,	jump	after	matching	]
] if	value	neq	0,	jump	after	matching	[
< move	pointer	left
> move	pointer	right
https://www.thepinkhumanist.com/articles/330-life-of-alan-turing-examined-in-a-new-graphic-novel
https://commons.wikimedia.org/wiki/File:USA_tar_bubble_la_brea_CA.jpg
G VMG VM
“One	VM	to	rule	them	all
cc-by-sa/2.0	-	©	Lairich	Rig	-	https://www.geograph.org.uk/photo/3203827
BB
yapi.bf	calculating	15	digits	of	π
Runtime Average	time	(ms/op) Error
Java	HotSpot(TM)	64-Bit	Server	VM 53 ±	1
OpenJDK	GraalVM	CE	19.0.0 45 ±	1
All	tests	are	ran	on	an	2018	MacBook	Pro	with	2.6	GHz	Intel	Core	i7	and	16	GB	2400	MHz	DDR4.	The	machine	runs	macOS	Mojave	10.14.4	and	JDK	1.8.0_212.	Tests
measured	with	 .	Each	test	ran	5	times	with	5	warmup	iterations.jmh
BB
yapi.bf	calculating	45	digits	of	π
Runtime Average	time	(ms/op) Error
Java	HotSpot(TM)	64-Bit	Server	VM 207 ±	2
OpenJDK	GraalVM	CE	19.0.0 185 ±	3
All	tests	are	ran	on	an	2018	MacBook	Pro	with	2.6	GHz	Intel	Core	i7	and	16	GB	2400	MHz	DDR4.	The	machine	runs	macOS	Mojave	10.14.4	and	JDK	1.8.0_212.	Tests
measured	with	 .	Each	test	ran	5	times	with	5	warmup	iterations.jmh
TT
cc-by-sa/2.5	-	©	Darvin	DeShazer	-	https://mushroomobserver.org/2538
“open	source	library	for	building
programming	language	implementations
as	interpreters	for	self-modifying	Abstract
Syntax	Trees.
A 	S 	TA 	S 	T
ROOT
INCR_VAL INCR_VAL INCR_VAL INCR_VAL INCR_VAL JUMP INCR_VAL INCR_VAL
DECR_PTR INCR_VAL INCR_PTR DECR_VAL
(part	of	the	program	that	adds	5	and	2)
https://chrisseaton.com/rubytruffle/pldi17-truffle/pldi17-truffle.pdf
P 	EP 	E
Calculate	 	for	positive	integers
If	we	know	that	 ,	the	program	becomes	simpler:
x
n
f (x, n) =
⎧
⎩
⎨
⎪
⎪
1
,(f (x, 0.5 ∗ n))
2
x ∗ f (x, n − 1),
if n = 0
if n is	even
otherwise
n = 5
f (x) = x ∗ ( )x
2
2
BB
https://pxhere.com/en/photo/493605
BB
@Override
public	void	execute(final	VirtualFrame	frame)	{	
				final	int	currentValue	=	someCalculation();	
				doPrint(getContext().getOutput(),	(char)	currentValue);	
}	
	
@TruffleBoundary
private	void	doPrint(final	PrintWriter	out,	final	char	value)	{	
				out.print(value);	
				out.flush();	
}
SS
https://www.mammoet.com/cases/Tennet/
SS
@Specialization(guards	=	"b	 	0")	
public	double	divide(int	a,	int	b)	{	
				return	a	/	b;	
}
SS
@Specialization(rewriteOn	=	ArithmeticException.class)	
int	doAddNoOverflow(int	a,	int	b)	{	
				return	Math.addExact(a,	b);	
}	
	
@Specialization
long	doAddWithOverflow(int	a,	int	b)	{	
				return	a	+	b;	
}	
execute(Integer.MAX_VALUE	-	1,	1)	 	doAddNoOverflow(Integer.MAX_VALUE	-	1,	1)	
	
execute(Integer.MAX_VALUE				,	1)	 	doAddNoOverflow(Integer.MAX_VALUE,	1)	
																																					throws	ArithmeticException	
																																		 	doAddWithOverflow(Integer.MAX_VALUE,	1)	
	
execute(Integer.MAX_VALUE	-	1,	1)	 	doAddWithOverflow(Integer.MAX_VALUE	-	1,	1)
W 	 	G VM	 	 	 	 	JVMW 	 	G VM	 	 	 	 	JVM
function	abs	(int	i)		
				if	(	 	we	saw	only	positive	integers	in	the	input	 	)	{	
								return	i;	
				}	else	{		
								transferToInterpreterAndInvalidate;	
								return	i	<	0	?	 i	:	i;	
				}	
}
B 	 	 	 	TB 	 	 	 	T
LL
Converts	a	sequence	of	characters	into	a	sequence	of	tokens.
PP
Converts	a	sequence	of	tokens	into	(hierarchical)	data	structure.
P 	 	L 	P 	 	L 	
1.	Write	some	regular	expressions
2.	Use	a	parser	generator	(like	 )ANTLR
cc-by-nc/2.5	-	©	Randall	Munroe	-	https://www.xkcd.com/1171/
I 	 	I
G VM	UG VM	U
GraalVM	comes	with	the	GraalVM	Updater	(gu)
Use	gu	to	install	components,	such	as	language	packs	or	tools.
e.g.	gu install native-image
gu	-L	install	brainfuck component-0.1-SNAPSHOT.jar
CC
Distribute	your	language	implementation	as	a	component:
$	tree	
.	
├──	META-INF	
│			├──	MANIFEST.MF	
│			├──	permissions	
│			└──	symlinks	
└──	jre	
				└──	languages	
								└──	bf	
												├──	bin	
												│			└──	bf	
												├──	brainfuck.jar	
												└──	launcher	
																└──	bf launcher.jar	
	
6	directories,	6	files
U 	 	 	U 	 	 	
1.	Prepare	source	code
2.	Prepare	GraalVM	polyglot	context
3.	Evaluate	the	source	code
input	=	"+	+	>	+	+	+	+	+	[	<	+	>	-	]	+	+	+	+	+	+	+	+	[	<	+	+	+	+	+	+	>	-	]	<	.";	
source	=	Source.newBuilder("bf",	input,	"user	input").build();	
output	=	new	ByteArrayOutputStream();	
context	=	Context.newBuilder("bf").out(output).build();	
context.eval(source);	
System.out.println(output.toString());
TT
“Implementing	your	own	language	using
GraalVM	will	not	only	give	you	high
performance.	More	importantly,	it	allows
your	language	to	connect	with	the	rich
tooling	provided	by	the	GraalVM	ecosystem.
https://www.graalvm.org/docs/graalvm-as-a-platform/
https://pxhere.com/en/photo/1067853
DD
Start	the	launcher	with	--inspect
Debugger listening on port 9229.
To start debugging, open the following URL in Chrome:
chrome-devtools://devtools/bundled/js_app.html?ws=127.0.0.1:9229/77b52d12-53f20cb0ab35
O 	O 	
The	Truffle	framework	has	an	Instrument	API	to	write	other	tools,	e.g.	code
coverage	measurement,	profilers.
1.	Source	code-related	events
2.	Allocation	events
3.	Language	runtime	and	thread	creation	events
4.	Application	execution	events
W 	W 	
Yes,	you	can	run	any	language	with	GraalVM.
...	but	it	may	take	some	time.
It's	certainly	fun
...	and	it	might	even	be	profitable.
T 	T 	
You	don't	need	to	write	a	parser	yourself
(and	maybe	you	don't	want	to,	either)
Take	time	to	think	about	the	AST
using	a	wrong	structure	leads	to	hard-to-track	bugs
refactoring	it	later	is	very	hard	and	time-consuming
@mthmulders  Full	Stack	Antwerp
Q	 	AQ	 	A
Sample	code:	http://bit.ly/brainfuck-jvm

Más contenido relacionado

Más de Maarten Mulders

What's cooking in Maven? (Devoxx FR)
What's cooking in Maven? (Devoxx FR)What's cooking in Maven? (Devoxx FR)
What's cooking in Maven? (Devoxx FR)Maarten Mulders
 
Making Maven Marvellous (Devnexus)
Making Maven Marvellous (Devnexus)Making Maven Marvellous (Devnexus)
Making Maven Marvellous (Devnexus)Maarten Mulders
 
Making Maven Marvellous (Java.il)
Making Maven Marvellous (Java.il)Making Maven Marvellous (Java.il)
Making Maven Marvellous (Java.il)Maarten Mulders
 
Making Maven Marvellous (JavaZone)
Making Maven Marvellous (JavaZone)Making Maven Marvellous (JavaZone)
Making Maven Marvellous (JavaZone)Maarten Mulders
 
Dapr: Dinosaur or Developer's Dream? (v1)
Dapr: Dinosaur or Developer's Dream? (v1)Dapr: Dinosaur or Developer's Dream? (v1)
Dapr: Dinosaur or Developer's Dream? (v1)Maarten Mulders
 
Dapr: Dinosaur or Developer Dream? (J-Fall)
Dapr: Dinosaur or Developer Dream? (J-Fall)Dapr: Dinosaur or Developer Dream? (J-Fall)
Dapr: Dinosaur or Developer Dream? (J-Fall)Maarten Mulders
 
SSL/TLS for Mortals (Devoxx UK)
SSL/TLS for Mortals (Devoxx UK)SSL/TLS for Mortals (Devoxx UK)
SSL/TLS for Mortals (Devoxx UK)Maarten Mulders
 
React in 40 minutes (Voxxed Days Romania)
React in 40 minutes (Voxxed Days Romania) React in 40 minutes (Voxxed Days Romania)
React in 40 minutes (Voxxed Days Romania) Maarten Mulders
 
React in 40 minutes (JCON)
React in 40 minutes (JCON) React in 40 minutes (JCON)
React in 40 minutes (JCON) Maarten Mulders
 
React in 50 minutes (Bucharest Software Craftsmanship Community)
React in 50 minutes (Bucharest Software Craftsmanship Community)React in 50 minutes (Bucharest Software Craftsmanship Community)
React in 50 minutes (Bucharest Software Craftsmanship Community)Maarten Mulders
 
React in 50 Minutes (JNation)
 React in 50 Minutes (JNation)  React in 50 Minutes (JNation)
React in 50 Minutes (JNation) Maarten Mulders
 
SSL/TLS for Mortals (JavaLand)
SSL/TLS for Mortals (JavaLand) SSL/TLS for Mortals (JavaLand)
SSL/TLS for Mortals (JavaLand) Maarten Mulders
 
Making Maven Marvellous (J-Fall)
Making Maven Marvellous (J-Fall)Making Maven Marvellous (J-Fall)
Making Maven Marvellous (J-Fall)Maarten Mulders
 
SSL/TLS for Mortals (Oracle Groundbreaker EMEA Virtual Tour)
SSL/TLS for Mortals (Oracle Groundbreaker EMEA Virtual Tour)SSL/TLS for Mortals (Oracle Groundbreaker EMEA Virtual Tour)
SSL/TLS for Mortals (Oracle Groundbreaker EMEA Virtual Tour)Maarten Mulders
 
SSL/TLS for Mortals (UtrechtJUG)
SSL/TLS for Mortals (UtrechtJUG)SSL/TLS for Mortals (UtrechtJUG)
SSL/TLS for Mortals (UtrechtJUG)Maarten Mulders
 
SSL/TLS for Mortals (Lockdown Lecture)
SSL/TLS for Mortals (Lockdown Lecture)SSL/TLS for Mortals (Lockdown Lecture)
SSL/TLS for Mortals (Lockdown Lecture)Maarten Mulders
 
React in 50 Minutes (OpenValue)
React in 50 Minutes (OpenValue) React in 50 Minutes (OpenValue)
React in 50 Minutes (OpenValue) Maarten Mulders
 
React in 50 Minutes (DevNexus)
React in 50 Minutes (DevNexus) React in 50 Minutes (DevNexus)
React in 50 Minutes (DevNexus) Maarten Mulders
 
React in 45 Minutes (Jfokus)
React in 45 Minutes (Jfokus)React in 45 Minutes (Jfokus)
React in 45 Minutes (Jfokus)Maarten Mulders
 
Building web applications with React (Jfokus)
Building web applications with React (Jfokus)Building web applications with React (Jfokus)
Building web applications with React (Jfokus)Maarten Mulders
 

Más de Maarten Mulders (20)

What's cooking in Maven? (Devoxx FR)
What's cooking in Maven? (Devoxx FR)What's cooking in Maven? (Devoxx FR)
What's cooking in Maven? (Devoxx FR)
 
Making Maven Marvellous (Devnexus)
Making Maven Marvellous (Devnexus)Making Maven Marvellous (Devnexus)
Making Maven Marvellous (Devnexus)
 
Making Maven Marvellous (Java.il)
Making Maven Marvellous (Java.il)Making Maven Marvellous (Java.il)
Making Maven Marvellous (Java.il)
 
Making Maven Marvellous (JavaZone)
Making Maven Marvellous (JavaZone)Making Maven Marvellous (JavaZone)
Making Maven Marvellous (JavaZone)
 
Dapr: Dinosaur or Developer's Dream? (v1)
Dapr: Dinosaur or Developer's Dream? (v1)Dapr: Dinosaur or Developer's Dream? (v1)
Dapr: Dinosaur or Developer's Dream? (v1)
 
Dapr: Dinosaur or Developer Dream? (J-Fall)
Dapr: Dinosaur or Developer Dream? (J-Fall)Dapr: Dinosaur or Developer Dream? (J-Fall)
Dapr: Dinosaur or Developer Dream? (J-Fall)
 
SSL/TLS for Mortals (Devoxx UK)
SSL/TLS for Mortals (Devoxx UK)SSL/TLS for Mortals (Devoxx UK)
SSL/TLS for Mortals (Devoxx UK)
 
React in 40 minutes (Voxxed Days Romania)
React in 40 minutes (Voxxed Days Romania) React in 40 minutes (Voxxed Days Romania)
React in 40 minutes (Voxxed Days Romania)
 
React in 40 minutes (JCON)
React in 40 minutes (JCON) React in 40 minutes (JCON)
React in 40 minutes (JCON)
 
React in 50 minutes (Bucharest Software Craftsmanship Community)
React in 50 minutes (Bucharest Software Craftsmanship Community)React in 50 minutes (Bucharest Software Craftsmanship Community)
React in 50 minutes (Bucharest Software Craftsmanship Community)
 
React in 50 Minutes (JNation)
 React in 50 Minutes (JNation)  React in 50 Minutes (JNation)
React in 50 Minutes (JNation)
 
SSL/TLS for Mortals (JavaLand)
SSL/TLS for Mortals (JavaLand) SSL/TLS for Mortals (JavaLand)
SSL/TLS for Mortals (JavaLand)
 
Making Maven Marvellous (J-Fall)
Making Maven Marvellous (J-Fall)Making Maven Marvellous (J-Fall)
Making Maven Marvellous (J-Fall)
 
SSL/TLS for Mortals (Oracle Groundbreaker EMEA Virtual Tour)
SSL/TLS for Mortals (Oracle Groundbreaker EMEA Virtual Tour)SSL/TLS for Mortals (Oracle Groundbreaker EMEA Virtual Tour)
SSL/TLS for Mortals (Oracle Groundbreaker EMEA Virtual Tour)
 
SSL/TLS for Mortals (UtrechtJUG)
SSL/TLS for Mortals (UtrechtJUG)SSL/TLS for Mortals (UtrechtJUG)
SSL/TLS for Mortals (UtrechtJUG)
 
SSL/TLS for Mortals (Lockdown Lecture)
SSL/TLS for Mortals (Lockdown Lecture)SSL/TLS for Mortals (Lockdown Lecture)
SSL/TLS for Mortals (Lockdown Lecture)
 
React in 50 Minutes (OpenValue)
React in 50 Minutes (OpenValue) React in 50 Minutes (OpenValue)
React in 50 Minutes (OpenValue)
 
React in 50 Minutes (DevNexus)
React in 50 Minutes (DevNexus) React in 50 Minutes (DevNexus)
React in 50 Minutes (DevNexus)
 
React in 45 Minutes (Jfokus)
React in 45 Minutes (Jfokus)React in 45 Minutes (Jfokus)
React in 45 Minutes (Jfokus)
 
Building web applications with React (Jfokus)
Building web applications with React (Jfokus)Building web applications with React (Jfokus)
Building web applications with React (Jfokus)
 

Último

HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 

Último (20)

HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 

Building a DSL with GraalVM (Full Stack Antwerpen)