profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/MarioAriasC/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.

MarioAriasC/funKTionale 889

Functional constructs for Kotlin

MarioAriasC/KotlinPrimavera 83

Spring support libraries for Kotlin

MarioAriasC/lagomkotlin 18

An example of Lightbend's Lagom project with Kotlin

MarioAriasC/kt-relational-data-access 7

Accessing relational databases with Spring Framework and Kotlin

MarioAriasC/monkey.kt 4

Kotlin implementation of the Monkey Language

MarioAriasC/monkey 1

Monkey implementation

MarioAriasC/akka-in-action 0

Accompanying source code for akka in action

MarioAriasC/alacritty 0

A cross-platform, GPU-accelerated terminal emulator

MarioAriasC/ccc 0

Companion Code for C++ Crash Course

MarioAriasC/corda 0

Corda is a distributed ledger platform designed to record, manage and automate legal agreements between business partners. Designed by (and for) the world's largest financial institutions, it offers a unique response to the privacy and scalability challenges facing decentralised applications.

PR merged MarioAriasC/monkey.kt

Improvements
  • Fixes https://github.com/MarioAriasC/monkey.kt/issues/10
  • GraalVM native image
+115 -85

0 comment

16 changed files

MarioAriasC

pr closed time in 12 hours

push eventMarioAriasC/monkey.kt

Mario Arias

commit sha 38353b2a3f488137e6df37b88fa76b256a751570

Cleanups and speedbumps

view details

Mario Arias

commit sha e617a6b1eb9106efc843693a8fe5ff71d9dc517a

Update to Kotlin 1.5.31

view details

Mario Arias

commit sha bdbf1b7e65febf47739a501f9f0f3f1c161f0bcb

GraalVM

view details

Mario Arias

commit sha 2a5319cc1f97da9b9767f1b84e865a1817fef302

Small corrections

view details

Mario Arias

commit sha c93dc3aff7d96ab945057451dadd4d61df46631a

README

view details

Mario Arias

commit sha 7f5018e4ce3ba2a51987f9b4d4f303bca643ee77

Merge pull request #11 from MarioAriasC/cleanup-plus-docs Improvements

view details

push time in 12 hours

issue closedMarioAriasC/monkey.kt

Kotlin performance remarks

Hi,

Saw your post on medium and I was intrigued why the kotlin vm benchmark is slower then the go one. And I think I found at least a part of it.

The Instructions typealias copies the bytearray in a couple of extension functions (offset/onset). I suspect the slices in go don't copy the array but just have a wrapper referencing the same array with some variables to point to start and length. You could off course also do this in Kotlin and get a better comparison.

As a test I changed the copy code in Instructions.offset to System.arraycopy and this made it >20% faster already (bit of a hassle as this doesn't work on UByteArray and I had to change it to ByteArray). After this change I see time being spend in MInteger.getValue() calls, which looks like a Kotlin specific performance issue.

Anyway just wanted to share my findings, thanks for the go comparison article.

closed time in 12 hours

rnentjes

push eventMarioAriasC/monkey.kt

Mario Arias

commit sha c93dc3aff7d96ab945057451dadd4d61df46631a

README

view details

push time in 12 hours

PR opened MarioAriasC/monkey.kt

Improvements
  • Fixes https://github.com/MarioAriasC/monkey.kt/issues/10
  • GraalVM native image
+122 -85

0 comment

17 changed files

pr created time in 12 hours

push eventMarioAriasC/monkey.kt

Mario Arias

commit sha 2a5319cc1f97da9b9767f1b84e865a1817fef302

Small corrections

view details

push time in 12 hours

push eventMarioAriasC/monkey

Mario Arias

commit sha 16369cd93e6d5734cf78699c25d957ed65886564

Add fast implementation and more docs

view details

push time in a day

push eventMarioAriasC/monkey.kt

Mario Arias

commit sha bdbf1b7e65febf47739a501f9f0f3f1c161f0bcb

GraalVM

view details

push time in 2 days

push eventMarioAriasC/monkey.kt

Mario Arias

commit sha e617a6b1eb9106efc843693a8fe5ff71d9dc517a

Update to Kotlin 1.5.31

view details

push time in 3 days

create barnchMarioAriasC/monkey.kt

branch : cleanup-plus-docs

created branch time in 5 days

issue commentMarioAriasC/monkey.kt

Kotlin performance remarks

It is my understanding that Go does indeed "go" directly to the byte array references without creating copies. My implementations of offset and onset were using the take and takeLast from the Kotlin collections library that wraps everything on List<T> and are very slow

I'll try to experiment with System.arrayCopy.

Thanks for your kind words

rnentjes

comment created time in 6 days

push eventMarioAriasC/monkey

Mario Arias

commit sha 067b6a9861dd79430cff3ae8f5216a7177dbfd25

closures

view details

Mario Arias

commit sha 452346f9474bc621f93e8563bd57d1543fabe9d4

delete macros

view details

push time in 6 days

push eventMarioAriasC/monkey.kt

Mario Arias

commit sha 27d5d37c2f7fd3d6f5c1cc2500220f98e4183f77

chapter 3

view details

Mario Arias

commit sha f67d20e313e1673d95826d7c53a06906127a1bc6

expressions

view details

Mario Arias

commit sha 54283fdbcb70fb216946ccdd88bc9023650cfa18

conditionals

view details

Mario Arias

commit sha b3d55af5e224777e43c103bc3adf76de3fca8af5

global scope

view details

Mario Arias

commit sha 9bc4231c60f524a48ea92f238ead694394d665b8

String, Array and Hash

view details

Mario Arias

commit sha 0a6e66fc3878f746f8b8f8e8b199c859b74f36a4

Delete ObjectType

view details

Mario Arias

commit sha ca59ebe4c0d3fab8d4cd8d94952677607b032a48

Functions

view details

Mario Arias

commit sha 5a9a08f9ec9c51b6edddbc3b9ff52373322ff3a9

Builtins

view details

Mario Arias

commit sha 35cbc80ab575ee146d6e608d8655fdd92cec8334

Closures

view details

Mario Arias

commit sha 49c259c11d7614a0ecb0c103a4594bae960f82b7

Delete macros and update readme

view details

Mario Arias

commit sha 98425257eaade10fbfab0de02ce9ecfd497fdd38

Merge pull request #9 from MarioAriasC/compiler Compiler

view details

push time in 6 days

PR merged MarioAriasC/monkey.kt

Compiler

Compiler implementation

+3391 -788

0 comment

33 changed files

MarioAriasC

pr closed time in 6 days

PR opened MarioAriasC/monkey.kt

Compiler

Compiler implementation

+3391 -788

0 comment

33 changed files

pr created time in 6 days

create barnchMarioAriasC/monkey.kt

branch : compiler

created branch time in 6 days

create barnchMarioAriasC/monkey.kt

branch : eval-macros

created branch time in 6 days

push eventMarioAriasC/monkey

Mario Arias

commit sha 284e1874d19e471dcadb4ac26b52b8db0f6254c1

Builtins

view details

push time in 13 days

push eventMarioAriasC/monkey

Mario Arias

commit sha 44806eaed84fa15f8453ed7c194abe233d1f3ab3

Functions

view details

push time in 17 days

startedDannyBen/bashly

started time in a month

push eventMarioAriasC/monkey

Mario Arias

commit sha 4eb8d6899ff320af59b4d3490159275ff26a8a5e

strings, array and hash

view details

push time in a month

startedbrettcannon/python-launcher

started time in a month

startedibraheemdev/modern-unix

started time in a month

startedwillmcgugan/textual

started time in a month

startedpoteto/monkers

started time in a month

issue commentalacritty/alacritty

Doesn't recognise # on UK Mac keyboard (Alt-3)

Still needed

thisistherk

comment created time in a month

push eventMarioAriasC/monkey

Mario Arias

commit sha a84aa249b622ae571f06786d08b96d538b671ac3

chapter 3

view details

Mario Arias

commit sha 9353a558b9dac7427e802d12ae3ea4831e781a08

expressions

view details

Mario Arias

commit sha f2488804f48e6f990ebce146480ab3120b19a638

conditionals

view details

Mario Arias

commit sha b8172bd1c1cc91a99f4b8ed4b95faa4a6402697e

global scope

view details

Mario Arias

commit sha 72e5079bb60258ee70d1de79e8c9cc5802a45b83

Merge branch 'main' of github.com-mario:MarioAriasC/monkey

view details

push time in 2 months

startedsudison/intellij-zig

started time in 2 months